كيفية الحصول على قيمة العائد من وظيفة في WinDbg؟

StackOverflow https://stackoverflow.com/questions/1025804

  •  06-07-2019
  •  | 
  •  

سؤال

وأنا أحاول تصحيح بعض من win32API مثل Createthread التي ترجع مقبض. كيفية الحصول على قيم الإرجاع في WinDbg؟

ولقد قمت ببعض البحوث وجدت مخزنة أن القيم عودة عموما في EAX السجل.

إذا وضعت نقطة على CreateThread بعد ذلك يمكنني أن خطوة الى تجميع Createthread وultimatelyw سأضرب بيان المتقاعد الذي يعني Createthread يعود.

وعند هذه النقطة يجب أن تحقق قيمة EAX تسجيل للحصول على قيمة HANDLE أو هو طريقة أخرى؟

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

المحلول

وليس هناك طريقة أخرى ليست أساسا نفس الاختبار EAX.

إذا كنت ترغب في الحصول متحذلق:

وEAX يعمل بشكل جيد لمدة 32 بت.

وRAX هو ما سترغب 64 التطبيقات قليلا

وret0 ما الاستخدامات إيتانيوم

و$ retreg هو زائف تسجيل يمكنك استخدام هذا سوف تتصرف بشكل صحيح في جميع الحالات.

ومنها مثلا.

0:028> r rax
rax=00000000fff02000
0:028> r eax
eax=fff02000
0:028> r $retreg 
$retreg=00000000fff02000
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top