כיצד לתקן & lsquo; חיבור קיים נסגר בכוח על ידי המארח המרוחק & rsquo; שְׁגִיאָה?

מחשב מרוחק הוא זה שאין לו נוכחות פיזית; ניתן לגשת אליו רק דרך רשת מחשבים כלשהי. המארח המרוחק הוא המחשב המארח את הרשת המארח את המחשב המרוחק והלקוח המרוחק הוא המשתמש של הלקוח המרוחק ברשת. תכונה זו חוללה מהפכה בהרבה תהליכים ויש לה היקף גדול גם בעתיד.

עם זאת, די לאחרונה נכנסו דיווחים רבים על שגיאת " חיבור קיים נסגר בכוח על ידי המארח המרוחק " בזמן שניסה להתחבר למארח המרוחק. שגיאה זו מופעלת באמצעות חיבור שקעים בין לקוח לשרת. במאמר זה, אנו נספק כמה פתרונות בר-קיימא לתיקון שגיאה זו לחלוטין וכן נודיע לך על הסיבות המעוררות שגיאה זו.

מה גורם לשגיאה 'חיבור קיים נסגר בכוח על ידי המארח המרוחק' ב- Windows?

לאחר שקיבלנו מספר רב של דוחות ממספר משתמשים, החלטנו לחקור את הנושא והכננו מערך פתרונות לתיקון. כמו כן, בדקנו את הסיבות שבגללן הוא מופעל ורשמנו אותן למטה.

  • שימוש ב- TLS 1.1 / 1.0: אם היישום פועל ב- TLS 1.1 או TLS 1.0, הוא עלול לגרום לשגיאה זו עקב פחתם. TLS 1.2 היא הדרך שעוברת בבחירת הפרוטוקול בו היישום משתמש.
  • קריפטוגרפיה מושבתת: אם הקריפטוגרפיה הושבתה עבור המחשב שלך היא תמנע את השימוש ב- TLS 1.2 ותחזור על TLS 1.0 שעלול לעורר את השגיאה.
  • יישום שקעים: במקרים מסוימים, סוג מסוים של יישום שקעים מעורר את השגיאה. יש באג עם כמה יישומים על ידי יישום ".NET" וזה עלול לגרום לשגיאה זו.
  • חסר קוד: עבור אנשים מסוימים שהשתמשו במסגרת Entity Framework, נצפה כי חסרה שורת קוד מסוימת שבגללה הופעלה השגיאה.
  • Framework מיושן של ".NET": במקרים מסוימים, אם מסגרת ".NET" הושבתה, ייתכן שתופעל שגיאה זו. משימות מסוימות דורשות עדכון מסגרת ".NET" לגירסה העדכנית על מנת שהן יפעלו כראוי.

כעת, כשיש לך הבנה בסיסית של אופי הבעיה, נעבור לעבר הפתרונות. הקפד ליישם את אלה בסדר הספציפי שבו הם מוצגים כדי למנוע עימותים.

פתרון 1: הפעלת קריפטוגרפיה

אם הקריפטוגרפיה הושבתה עבור המכונה שלך השימוש ב- TLS 1.2 אסור. לכן, בשלב זה אנו נאפשר קריפטוגרפיה. בשביל זה:

  1. לחץ על " Windows " + " R " כדי לפתוח את הפקודת הפעלה.
  2. הקלד "regedit" ולחץ על " Enter ".
  3. נווט לכתובת הבאה
    HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v4.0.3031

    נווט לכתובת זו אם אין ערך " SchUseStrongCrypto " בחלונית הימנית.

    HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v4.0.30319
  4. בחלונית הימנית, לחץ פעמיים על האפשרות " SchUseStrongCrypto " והזן " 1 " כנתוני ערך.
  5. לחץ על " אישור " כדי לשמור את השינויים ובדוק אם הבעיה נמשכת.

פתרון 2: אילוץ שימוש ב- TLS 1.2

אם היישום הוגדר לשימוש ב- TLS 1.1 או TLS 1.0 במקום TLS 1.2, הוא עלול לגרום לשגיאה זו. לכן, בשלב זה, נגדיר את המחשב שלנו לשימוש ב- TLS 1.2. בשביל זה:

  1. נווט לשורש האתר ולחץ באמצעות לחצן העכבר הימני על הקובץ "global.asax" .
  2. בחר " הצג קוד " מהרשימה.
  3. צריכה להיות שיטת " Application_Start ", הוסף את שורת הקוד הבאה לשיטה זו
    אם (ServicePointManager. SecurityProtocol. HasFlag (SecurityProtocolType. Tls12) == false) SecurityProtocolType. Tls12;              
  4. שמור את השינויים ובדוק אם הבעיה נמשכת.

פתרון 3: שינוי יישום השקעים

אם ביישום שקע מסוים יש באג או תקלה, זה עלול למנוע אלמנטים מסוימים של היישום לתפקד כראוי, ובגלל זה שגיאה זו עלולה להופיע. לכן, בשלב זה, נקבע את תצורתו לשימוש ביישום אחר. בשביל זה:

  1. וודא שיש לך מחלקה " StateObjec t" עם " מאגר בתים [] חוצץ = בתים חדשים [1024], שקע שקע ציבורי; ".
  2. התקשר לפונקציה " קבל (שקעים) " וקרא לקוד הבא ב " בטל ReceiveCallback (IAsyncResult ar) "
     SocketError errorCode ; int nBytesRec = socket . EndReceive ( ar , out errorCode ); if ( errorCode != SocketError . Success ) { nBytesRec = 0 ; } 
  3. בדוק אם הבעיה נמשכת לאחר הטמעת קוד זה.

פתרון 4: הוספת שורות פקודה (רק למסגרת הישויות)

אם אתה משתמש במסגרת Entity Framework, ייתכן שחסר שורת קוד מסוימת. לכן, בשלב זה נוסיף שורת קוד זו על מנת לפתור בעיה זו. בשביל זה:

  1. פתח את הקובץ " .edmx " ופתח את הקובץ " .context.tt " שמתחתיו.
  2. פתח את הקובץ " .context.cs " והוסף את שורת הקוד הבאה לבנאי שלך
     public DBEntities () : base ( "name=DBEntities" ) { this . Configuration . ProxyCreationEnabled = false ; // ADD THIS LINE ! } 
  3. בדוק אם הבעיה נמשכת לאחר הוספת שורת קוד זו.

פתרון 5: עדכון .NET Framework

הגרסה האחרונה של מסגרת ".NET" נדרשת על מנת שהכל יתפקד בצורה חלקה. לכן, בשלב זה, אנו מורידים את הגרסה האחרונה מהאתר ומתקינים אותה. בשביל זה:

  1. נווט לקישור זה להורדת ההתקנה.
  2. בצע את הקובץ " .exe " כדי להתחיל בתהליך ההתקנה.
  3. עקוב אחר ההוראות שעל המסך להתקנת היישום במחשב שלך.
  4. בדוק אם הבעיה נמשכת לאחר השלמת ההתקנה.