setzen einen Schreibhaltepunkt auf die Adresse von teb-> LastErrorValue
ba w4 @@c++(&(@$thread->LastErrorValue))
glücklich Bruch, wenn Fehlerwert ändert Sie Bedingungen an den bp hinzufügen können nur zu brechen, wenn Sie
0:000> ba w4 @@c++(&(@$thread->LastErrorValue)) "!gle;gc"
breakpoint 0 redefined
0:000> g
LastErrorValue: (Win32) 0 (0) - The operation completed successfully.
LastStatusValue: (NTSTATUS) 0xc000008a - Indicates the specified resource type cannot be found in the image file.
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
LastErrorValue: (Win32) 0 (0) - The operation completed successfully.
LastStatusValue: (NTSTATUS) 0 - STATUS_WAIT_0
LastErrorValue: (Win32) 0 (0) - The operation completed successfully.
LastStatusValue: (NTSTATUS) 0xc0000034 - Object Name not found.
LastErrorValue: (Win32) 0 (0) - The operation completed successfully.
LastStatusValue: (NTSTATUS) 0 - STATUS_WAIT_0
LastErrorValue: (Win32) 0 (0) - The operation completed successfully.
LastStatusValue: (NTSTATUS) 0xc0000034 - Object Name not found.
LastErrorValue: (Win32) 0 (0) - The operation completed successfully.
LastStatusValue: (NTSTATUS) 0xc0000034 - Object Name not found.
LastErrorValue: (Win32) 0 (0) - The operation completed successfully.
LastStatusValue: (NTSTATUS) 0xc0000034 - Object Name not found.
LastErrorValue: (Win32) 0 (0) - The operation completed successfully.
LastStatusValue: (NTSTATUS) 0xc0000034 - Object Name not found.
zu wollen [GetLastError()] (https://msdn.microsoft.com/de-de/library/windows/desktop/ms679360 (v = vs.85) .aspx) ist eine Methode. Ruft Ihr Code das bereits auf oder erwarten Sie, dass VS oder WinDbg das aufrufen? Wie oft möchten Sie es überprüfen? Einmal pro Millisekunde? Einmal pro Mikrosekunde? –
Es ist eine Methode, die einen Wert im TEB eines Threads überprüft. Ich möchte in dem Moment einbrechen, in dem dieser Wert geändert wurde. Im Moment setze ich nur einen bedingten Haltepunkt auf "ntdll! RtlSetLastWin32Error", aber ich frage mich, ob es einen besseren Weg gibt, das zu erreichen. – Train
Wenn Sie die Adresse kennen, können Sie einen Speicherhaltepunkt in WinDbg ('ba w') setzen –