الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Exception غريب

بدأه EXP في 30 نوفمبر 2008 · 1 رد · 542 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه

و انا بعمل debug للبرنامج كل حاجة ماشية تمام لما اقفل ال visualstudio و اشغل البرنامج يطلع ال exception دة

See the end of this message for details on invoking

just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************

System.ObjectDisposedException: Cannot access a disposed object.

Object name: 'RichTextBox'.

at System.Windows.Forms.Control.CreateHandle()

at System.Windows.Forms.TextBoxBase.CreateHandle()

at System.Windows.Forms.RichTextBox.set_SelectionColor(Color value)

at PublicChatCrtl.PublicChatCtrl.ReciveMessage(String from, String strMessage)

at RoomCtrl.GameForm.sv1_ReciveMessageCompleted(Object o, ReciveMessageCompletedEventArgs e)

at RoomCtrl.GameService.ReciveMessageCompletedEventHandler.Invoke(Object sender, ReciveMessageCompletedEventArgs e)

at RoomCtrl.GameService.GameService.OnReciveMessageOperationCompleted(Object arg)

#2

الموضوع بسيط خالص

لو انت بتستخدم threading في الغالب هو ده السبب.

المهم ال exception ده من نوعObjectDisposedException المهم انت بتحاول تتعامل من خلال الكود مع RichTextBox تمام؟

المهم انت بتحاول تتعامل مع الأداة دي بعد ما اتعمللها dispose يعني مثلا بعد ما انت طفيت الفورمة

أو أثناء ما الفورمة بتتقفل

أو انت في خلال الكود استخدمت جملة using أو ألأمر Dispose

المهم

الحاصل إنه ترتيب الأوامر عندك فيه مشكلة

وهي إنك بتحاول تتعامل مع العنصر ده بعد ما خلاص الفورمة اتقفلت (طبعا بالنسبة للدوت نت) وخلاص اتعملت عملية dispose للأداة

اتأكد من ترتيب ووضع الأوامر الخاصة بيك

يعني مثلا ما تحطش أبدا كود في destructor:

~MyForm(){}

وهكذا

يعني ممكن مثلا الأمر ده

PublicChatCrtl.PublicChatCtrl.ReciveMessage(String from, String strMessage)

هو المسؤول عن المشكلة ده

هو مثلا بيقفل الفورمة

أو بيعمللها Dispose أو للكنترول نفسها

وهكذا

فعلشان نقدر نساعدك أكتر يا ريت لو تحطلنا الكود علشان نقدر نفهم المشكلة فين بالظبط

مواضيع مشابهة