Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
블로그를 보다가 좋은 디버거 명령을 발견하였습니다. (!error, .enable_long_status)
첫번째 좋은 명령은 .enable_long_status 입니다.
아래와 같이 명령을 실행하면 우리가 NTSTATUS.H 에서 보는 형태의 에러 값을 볼 수 있습니다.
0:000> dt status
status = -1073741823
0:000> .enable_long_status 1
0:000> dt status
status = 0xC0000001
두번째 명령은 !error 입니다.
win32, winsock, NTSTATUS, NetAPI 의 Error code 값을 넣으면 Error 정보를 볼 수 있습니다.
Syntax
!error Value [Flags]
Parameters:
Value Specifies one of the following error codes:
Win32
Winsock
NTSTATUS
NetAPI
Flags 가 1 로 Set 되면 해당 error code 를 NTSTATUS 에서 읽어 옵니다.
Dump out the value as Win32
0:000> !error 1
Error code: (Win32) 0x1 (1) - Incorrect function.
Dump out the value as NTSTATUS
0:000> !error 1 1
Error code: (NTSTATUS) 0x1 - STATUS_WAIT_1
Dump out an NTSTATUS value that is not ambiguous with a Win32 value
0:000> !error c0000001
Error code: (NTSTATUS) 0xc0000001 (3221225473) - {Operation Failed} The requested operation was unsuccessful.