none
A first chance exception of type 'System.Runtime.InteropServices.COMException' occurred in System.Windows.Forms.dll RRS feed

  • שאלה

  • הרצתי את הפרויקט שלי על המחשב והוא רץ תקין

    עשיתי מספר שינויים בקוד ובתפריט debag->option->debagin->general

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

       A first chance exception of type 'System.Runtime.InteropServices.COMException' occurred in System.Windows.Forms.dll 

    Additional information: השגיאה HRESULT E_FAIL הוחזרה מקריאה לרכיב COM. 

    בעקבות כך לקחתי קוד אחר מהגיבוי שעובד לי מצוין במחשב אחר אבל הבעיה נשארה

    יש לך רעיון???

    תודה 

    יום ראשון 05 יוני 2016 10:17

תשובות

  • הבעיה חזרה למרות מה שעשיתי מה שכתבתי  למעלה 

    אני אבאר את השאלה הפרויקט רץ מצוין על מחשב אחד מצוין  ,כאשר בוחרים בDebug > Exceptions את השורה .

     System.Runtime.InteropServices.COMException

    אז נופל  בשגיאת זמן ריצה ,אבל אם לא ,עובד בסדר,

    לעומת זאת במחשב שני מציג את אותה שגיאה באותו מקום אע"פ שב בEXEPTION 

    השורה הזו לא נבחרה

    אני חייבת עזרה ,רעיון !  זה תוקע לי הכול 

     


    • סומן כתשובה על-ידי MALCA123456 יום ראשון 26 יוני 2016 06:38
    יום ראשון 05 יוני 2016 12:42
  • קראתי בפורמים שיש מושג שנקרא FIRST ECXCEPTION  -שזה אומר הופעה ראשונה של חריגה 

    והיה כתוב שייתכן שיש חריגה אבל לא תמיד זו שגיאה 

    אצלי,במחשב אחד למרות שעשיתי מה שהראיתי למעלה -הורדתי את ה  V ,החריגה ממשיכה להופיעה ובשאר המחשבים החריגה לא מופיעה 

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

    תודה לכולם על העזרה 

    • סומן כתשובה על-ידי MALCA123456 יום ראשון 26 יוני 2016 06:37
    יום ראשון 26 יוני 2016 06:36
  • אהלן

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

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


    signature   Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]    [Linkedin]

    • סומן כתשובה על-ידי MALCA123456 יום רביעי 06 יולי 2016 05:32
    יום שלישי 05 יולי 2016 16:03
    מנחה דיון

כל התגובות

  • אוקי מצאתי איך לגרום שהשגיאה לא תופיע :

    לכו לנתיב הבה

     Debug > Exceptions... and use the Find... option to locate System.Runtime.InteropServices.COMException

    ותורידו את הV 

    יש לי שאלה אחרת, מה הרעיון להתעלם מחלק מהשגיאות? יש שגיאות שה VISUAL זורק סתם? לאיזה שגיאות כן צריך להתייחס?

    רוב בEXEPTION  בתפריט הזה לא בחורים

    אשמח לתגובה שתבהיר את העניין

    תודה

    יום ראשון 05 יוני 2016 10:54
  • הבעיה חזרה למרות מה שעשיתי מה שכתבתי  למעלה 

    אני אבאר את השאלה הפרויקט רץ מצוין על מחשב אחד מצוין  ,כאשר בוחרים בDebug > Exceptions את השורה .

     System.Runtime.InteropServices.COMException

    אז נופל  בשגיאת זמן ריצה ,אבל אם לא ,עובד בסדר,

    לעומת זאת במחשב שני מציג את אותה שגיאה באותו מקום אע"פ שב בEXEPTION 

    השורה הזו לא נבחרה

    אני חייבת עזרה ,רעיון !  זה תוקע לי הכול 

     


    • סומן כתשובה על-ידי MALCA123456 יום ראשון 26 יוני 2016 06:38
    יום ראשון 05 יוני 2016 12:42
  • שלום מלכה

    הבעיה עדיין רלוונטית

    אני שם לב שההודעה שלך עברה אחורה בלי תגובה

    * בפעם הבאה אם אין תגובה במשך יותר משהוע-שבועיים אני ממליץ לשים תגובה כדי להקפיץ את השרשור :-)


    signature   Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]    [Linkedin]


    יום שישי 24 יוני 2016 10:02
    מנחה דיון
  • קראתי בפורמים שיש מושג שנקרא FIRST ECXCEPTION  -שזה אומר הופעה ראשונה של חריגה 

    והיה כתוב שייתכן שיש חריגה אבל לא תמיד זו שגיאה 

    אצלי,במחשב אחד למרות שעשיתי מה שהראיתי למעלה -הורדתי את ה  V ,החריגה ממשיכה להופיעה ובשאר המחשבים החריגה לא מופיעה 

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

    תודה לכולם על העזרה 

    • סומן כתשובה על-ידי MALCA123456 יום ראשון 26 יוני 2016 06:37
    יום ראשון 26 יוני 2016 06:36
  • אם יש למשהוא הסבר אני אשמח לשמוע 

    זה מה שאני הבנתי 

    יום ראשון 26 יוני 2016 06:37
  • לא עברתי על הבעיה המקורית לעומק מכיוון שלא רציתי לבזבז זמן אם הבעיה נפתרה כבר. לכן קודם שאלתי.

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

    יש סיבה לכך שהדבר מסודר בצורה כזו. התיאור שלך מתאר על בעיה פוטניאלית שכדי לסדר אם כי בהרצה הנוכחית היא לא מפריעה.

    בקישור הבא תוכלי לראות מעט מדיע על הרמות המובנות השונות של שגיאות שיש ב System.Diagnostics:
    https://msdn.microsoft.com/en-us/library/system.diagnostics.tracelevel(v=vs.110).aspx

    Column1 Column2
    Member name Description
    Critical Value: 1. Indicates logs for a critical alert.
    Error Value: 2. Indicates logs for an error.
    Information Value: 4. Indicates logs for an informational message.
    Undefined Value: 0. Indicates logs at all levels.
    Verbose Value: 5. Indicates logs at all levels.
    Warning Value: 3. Indicates logs for a warning.

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


    signature   Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]    [Linkedin]

    יום ראשון 26 יוני 2016 07:07
    מנחה דיון
  • לפי מה שהבנתי הטבלה שהכנתה מכילה כל מני רמות שגיאה  

    איך אני יכולה לדעת על שגיאה ספציפית לאיזה רמה היא שייכת ?

    מתי כן להתייחס לשגיאה ומתי לא

    תודה

    יום שלישי 05 יולי 2016 10:07
  • אהלן

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

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


    signature   Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]    [Linkedin]

    • סומן כתשובה על-ידי MALCA123456 יום רביעי 06 יולי 2016 05:32
    יום שלישי 05 יולי 2016 16:03
    מנחה דיון
  • תודה רבה זה מאוד מעניין .נהנתי ללמוד דבר חדש 
    יום רביעי 06 יולי 2016 05:32
  • אני שמח לשמוע :-)

    אני רואה שאני מגיב 3 דקות אחרייך... אז אני יכול להגיד בוקר טוב :-)


    signature   Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]    [Linkedin]

    יום רביעי 06 יולי 2016 05:37
    מנחה דיון
  • סיפור קטן אמיתי מהחיים :-)
    עם מסקנה

    לפני כמה חודשים (דיי הרבה, אולי כבר שנה) נתתי שירות לחברה שהיה להם בעיה כלשהיא.

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

    התחלנו לנטר את הבעיה:

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

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

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

    מה שהתבר, זה שהם הגדירו את המערכת לשמור בקובץ כל הודעה בכל רמה שהיא כולל הודעות לא רלוונטיות ברמת information, הם ייצרו המון exception-ים בעזרת בלוקים של try-catch, כדי לשמור הרבה מאוד הודעות שגיאה, כדי שיוכלו לנטר בעיות (מה שגרם למערכת להיות איטית יותר). בגלל שנרשמו כל כך הרבה הודעות, הקבצים היו נמחקים כבר תוך כמה דקות ולא היה ניתן לעבוד איתם בכלל!

    מסקנה:

    1. לא לשמור סתם דברים מיותרים ולהכניס אותם לקובץ הלוג. לפעמים הודעות ברמה נמוכה לא חייבים להכניס ללוג

    2. זה לא חכם לרשום לקובץ אם אתם לא יודעים מה נרשם ושזה באמת יעיל. תמיד תבדקו את מה שאתם עושים בדימוי של מקרה אמיתי.


    signature   Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]    [Linkedin]


    יום רביעי 06 יולי 2016 05:49
    מנחה דיון
  • קראתי קמת על LOG4NET אני חושבת שזה כלי מצוין שיכול מאוד לעזור לנטר את השגיאות אבל אני צריכה עזרה 

    נסתי להשתמש בו ונתקלתי בבעיה 

    הבנתי שיש 2 צורות להשתמש בו דרך NUGET ודרך DLL

    אני ניסיתי באמצעות DLL והשתמשתי במדריך של CODE PROJECT באתר 

    http://www.codeproject.com/Articles/42276/How-to-Use-Log-Net-with-VB-NET-A-Simple-Step-By-St

    ההסבר שם מפרט יפה ,עבדתי ע"פ ההסבר שם ונתקעתי בשלב של ההרצה הגעתי עד נקודה 16 העתקתי את הקוד של הטופס לטופס ואז הרצתי

    הVS לא הסכים להריץ כיוון שיש טעיות וזו הטעות שהוא כתב 

    Error 1 Unable to write to output file 'C:\Users\SAPIR\Desktop\Log4NetAssembly1\Log4NetAssembly1\obj\Debug\Log4NetAssembly1.exe': System Error &H80070005& Log4NetAssembly1

    כאשר התעקשתי להריץ כתב את ההודעה הבאה 

    אני לא יודעת איך להמשיך מפוא 

    אגב את DLL של LOG4NET לקחתי מהקישור הבה (האתר שאליו הם נתנו את הקישור להורדה לא היה פעיל)

    האם יש לך פתרון לבעיה אולי הקשור שממנו לקחתי בעייתי 

    ואולי עדיף באמצעות NUGET  -אתה מכיר מדריך טוב להשתמש במערכת של LOG4NET באמצעות NUGET????

    תודה מראש 

    זה מאוד יעזור 


    יום חמישי 07 יולי 2016 09:42
  • אני מציע (כמעט) תמיד לעבוד דרך NUGET. זו הדרך המומלצת רשמית על ידי מייקרוסופט גם כן. כל הרעיון של NUGET זה לנהל את התוספות. כאשר עובדים NUGET יש פחות סיכוי לטעות למשל בבחירה של הגרסה המתאימה לגרסת ה דוט-נט שאיתה אתם עובדים.


    signature   Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]    [Linkedin]

    יום חמישי 07 יולי 2016 11:21
    מנחה דיון