سؤال

لقد حصلت على مشروع أحتاج إلى العمل مع 3 مجمعين (Borland و GNU و Microsoft). إنه يعمل في 2/3 والآن أحتاج فقط إلى العمل مع microsofts. يبدو أنه يتعطل في الأماكن التي تعمل بشكل جيد مع المجمعين الآخرين ، لذلك أتساءل عما إذا كانت هناك طريقة لتصحيح خط الأوامر ، ربما للحصول على تتبع المكدس أو الحصول على الخط الذي تسبب في الحادث ، شيء مشابه ل gdb مع GNU.

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

المحلول

(الكشف الكامل: أعمل في فريق Visual Studio)

إذا كنت تستخدم برنامج التحويل البرمجي Microsoft C ++ ، هل تم تثبيت Visual Studio بالفعل؟ إذا كان الأمر كذلك ، يمكنك استخدام مصحح الأخطاء المدمج. إذا لم يكن الأمر كذلك ، فإنني أوصي بمحاولة Visual C ++ 2010 Express مجانا. لديها مصحح أخطاء أصلي ممتازة. يمكنك اختراق استثناءات الفرصة الأولى (C ++ ، SEH ، Win32 stivents) والانتقال مباشرة إلى الخط حيث حدث مع مكدس المكالمات ، والسكان المحليين ، إلخ.

نصائح أخرى

أدوات تصحيح الأخطاء لنظام التشغيل Windows - حزمة متميزة من أدوات التصحيح التي تتضمن cdb و ntsd مصحح تحكم (بالإضافة إلى GUI Windbg Debugger).

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

هذه هي أدوات تصحيح الأخطاء المتشددين التي تستخدمها Microsoft لتحليل التعطل (والمزيد).

لاحظ أن Windows يأتي مع إصدار من ntsd Debugger (على الأقل كان يستخدم - يبدو أنه ليس على مربع Win7 الخاص بي خارج تركيب حزمة الأدوات) ، ولكن من الجيد الحصول على الحزمة على أي حال حتى يكون لديك أحدث الأدوات - وكما قلت إن المستندات هي ثروة معلومات رائعة.

حسنًا ، تواجه مشكلة مع المترجم الواحد الذي يحاول جداً من الصعب تحطيم برنامجك عن قصد. يطلق عليه "اختبارات الخطأ في وقت التشغيل" ، خيار ترجمة خيار /RTC. يمكنك إيقاف تشغيله لجعله يتصرف مثل هؤلاء الآخرين. أو يمكنك متابعة زاوية "خطأ ما هنا". تم توثيقه جيدًا في مقالة مكتبة MSDN لـ /RTC.

CodeView هو منتج أقدم يقوم بذلك ، ولكن لا يوجد سبب يمنعك من استخدام Visual Studio لفعل الشيء نفسه.

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