Versucht, die Aufrufmethode einer EventHandler-Instanz zu finden, musste ich es tun und dann versuchen, herauszufinden, auf welche Methode sich _methodPtr
bezog.Erhalte eine Funktionssignatur von PDB mit WinDBG
_methodPtr
war in meinem Fall 32c0e0
ich es dd 32c0e0
mit herausgefunden (die die Methode Adresse enthält).
jedoch das erste, was ich versuchte, war bei 32c0e0 auf nicht verwalteten Code zu suchen, das war:
0:000> !U 32c0e0
Unmanaged code
0032c0e0 e8d55cf567 call mscorwks!PrecodeFixupThunk (68281dba)
... etc ...
PrecodeFixupThunk kein Export von mscorwks ist, und ich kann nicht anyting auf Google darüber finden. Ich denke, dass windbg den Anruf Lösung mscorwks.pdb mit ...
Meine Frage ist: Was ist PrecodeFixupThunk Signatur? Ich kann seinen Asm-Code mit x
und !u
finden, aber allgemeiner gibt es eine Möglichkeit, eine Funktionssignatur mit windbg zu erhalten?
[Bearbeiten] FYI:
0:000> x /v /t mscorwks!PrecodeFixupThunk
pub global 68281dba 0 <NoType> mscorwks!PrecodeFixupThunk = <no type information>
Sie für diesen informativen Link danken. Also wenn ich gut verstehe, mscorwks.pdb enthält 'PrecodeFixupThunk' Methodenname (und seine Adresszuordnung), aber keine weiteren Informationen? – Olivier
Das stimmt. Und die zweite: 'Thunk' Postfix möglicherweise diese Funktion aus Assembler-Code generiert und hat keine gemeinsame Prolog/Epilog/Aufruf Konvention. –
Du hast recht, es scheint so zu sein :) – Olivier