سؤال

لقد فتحت مشروعًا (تم إنشاؤه في D2007/08) في D2009 وسوف يقوم بتجميع الكثير من الاستثناءات ولكنه يرميها عند تنفيذها.شيء غريب، لكني أعلم أن المشروع في حالة من الفوضى، لذا أريد المضي قدمًا وإصلاحه.حسنًا، ليس إصلاح كل ذلك حقًا، فقط اجعله يعمل سيكون كافيًا.

عندما قمت بتشغيله، تلقيت بعض إشعارات استثناء مصحح الأخطاء (مربع حوار الرسالة الصغير مع أزرار فاصل ومتابعة وتعليمات) وأردت المتابعة ومعرفة ما إذا كان سيعمل عند تخطي الاستثناء.لقد قمت بتحديد خانة الاختيار الصغيرة "تجاهل نوع الاستثناء هذا" في الزاوية اليسرى السفلية ثم قمت بالنقر فوق "متابعة".الآن لم أعد أحصل على إشعار الاستثناء، لكن التطبيق ما زال لا يعمل.لقد حصلت للتو على مربعي خطأ غامضين وليس لدي أي فكرة عما يحدث.

أرغب في إعادة تمكين نوع الاستثناء الذي حددته مسبقًا ليتم تجاهله.لكن لا يمكنني العثور على الخيار في أي مكان.أين يجب أن أبحث عن هذا؟هل أستطيع مساعدتك؟

هل كانت مفيدة؟

المحلول

يتم استخراج ما يلي من هذه الصفحة على دلفي سؤال وجواب بواسطة روب كينيدي:(CC مرخص) على الرغم من أنه يتعلق بـ Delphi 2005 إلا أنه قد يساعد.

لماذا أستمر في تلقي رسائل الخطأ حتى بعد كتابة معالج الاستثناء؟

في إعداداته الافتراضية، يقوم Delphi IDE بإعلامك عند حدوث استثناء في برنامجك، كما في الشكل 1.ما هو مهم أن تدركه هو أنه في هذه المرحلة، لم يتم تشغيل أي من أكواد معالجة الاستثناءات الخاصة ببرنامجك حتى الآن.كل هذا هو دلفي نفسها.وضعه الخاص كمصحح أخطاء يسمح له بالحصول على الإشعار الأول لأي استثناء في برنامجك، حتى قبل أن يعرف برنامجك عنه.

enter image description here

تجنب الإخطار

إذا كنت لا تريد أن يتم إعلامك عند حدوث استثناء، فلديك بعض الخيارات.

  • يمكنك استخدام "نقاط التوقف المتقدمة" في دلفي لتعطيل معالجة الاستثناءات حول منطقة من التعليمات البرمجية.للبدء، قم بتعيين نقطة توقف على سطر التعليمات البرمجية حيث تريد أن يتجاهل IDE الاستثناءات.انقر بزر الماوس الأيمن على نقطة التوقف في الحضيض وافتح مربع حوار خاصية نقطة التوقف.يوجد في القسم المتقدم بعض خانات الاختيار.(انظر الشكل 2.) قم بإلغاء تحديد مربع "الفاصل" لمنع مصحح الأخطاء من مقاطعة برنامجك عند هذا السطر، وقم بتعيين مربع "تجاهل الاستثناءات اللاحقة".

    بعد ذلك، قم بتعيين نقطة توقف أخرى حيث تريد أن يستأنف مصحح الأخطاء معالجة الاستثناءات.قم بتغيير خصائصه للتعامل مع الاستثناءات اللاحقة.

enter image description here

  • يمكنك إخبار مصحح الأخطاء بتجاهل أنواع معينة من الاستثناءات.يوضح الشكل 3 خيارات استثناء لغة دلفي.أضف فئة استثناء إلى القائمة، وجميع الاستثناءات من هذا النوع وأي أنواع فرعية سوف تمر عبر برنامجك دون تدخل دلفي.

enter image description here

  • في الخيار المرتبط بالخيار السابق، يمكنك إخبار مصحح الأخطاء بعدم المقاطعة عند أي استثناءات.للقيام بذلك، قم بإلغاء تحديد خانة الاختيار "الإعلام بشأن استثناءات اللغة".

  • وأخيرًا، يمكنك إيقاف تشغيل التصحيح المتكامل تمامًا.لن تقوم دلفي بإخطارك بالاستثناءات، كما أنها لن تتوقف عند نقاط التوقف أو تسمح باستخدام زر "إيقاف مؤقت".قم بإيقاف تشغيل تصحيح الأخطاء المدمج في خيارات مصحح الأخطاء، كما هو موضح في الشكل 5 لـ Delphi 2005.

enter image description here

نصائح أخرى

ولقد وجدت أنواع استثناء تجاهلها في

و(Main menu) Tools >> Options >> Debugger Options >> CodeGear Debuggers >> Language Exceptions >> وهناك قائمة أنواع استثناء تجاهلها.

وإنها إلى حد ما أكثر خفية من في D2005 لكن قريب جدا من ما قيل في المقال المشار إليه من قبل ستيوارت دانكيلد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top