سؤال

يمكنني استخدام SOS.DLL في VisualStudio لتصحيح برنامج C# الخاص بي. البرنامج كما هو موضح أدناه.

أمر التصحيح هو ! DumpstackObjects.

class Program
{
    static void Main()
    {
        Int32 result = f(1);
    }

    static Int32 f(Int32 i)
    {
        Int32 j = i + 1;
        return j;            <===========BreakPoint is here
    }
}

بعد أن أدخل الأمر "! DSO" في النافذة الفورية للاستوديو المرئي ، فإن النتيجة هي أدناه:

معرف موضوع OS: 0xF6C (3948)

اسم كائن ESP/Reg

لماذا لا يوجد شيء؟ اعتقدت أنه يجب أن يكون هناك args I والمتغير المحلي J.

شكرا على الإجابة على أسئلتي الساذجة ...

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

المحلول

!dumpstackobject تفريغ المراجع على المكدس إلى الكائنات. أي لن ترى أنواع القيمة مع هذا الأمر. يستخدم !clrstack -l لرؤية السكان المحليين (استخدام -p لرؤية المعلمات ، و -a لكليهما).

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