MSDN上说这个函数返回的是当前线程最近一次错误码,这个错误码是通过调用SetLastError函数设置的,具体实现其实相当简单,也就两句汇编代码
mov eax, dword ptr fs:[18h]
mov eax, dword ptr [ecx + 34h]
首先获得TEB指针,然后读TEB起始偏移0x34位置的值,查阅TEB结构得知,这个值就是LastErrorCode.
MSDN上说这个函数返回的是当前线程最近一次错误码,这个错误码是通过调用SetLastError函数设置的,具体实现其实相当简单,也就两句汇编代码
mov eax, dword ptr fs:[18h]
mov eax, dword ptr [ecx + 34h]
首先获得TEB指针,然后读TEB起始偏移0x34位置的值,查阅TEB结构得知,这个值就是LastErrorCode.