GetLastError() 是否具有粘性,即在错误实际发生之前不会修改错误代码?或者 Win32 函数是否将最后一个错误代码设置为
ERROR_SUCCESS
(0
) 以表示任何成功的操作?
GetLastError()
返回通过调用线程上最近一次调用 SetLastError()
(或尴尬的1 RestoreLastError()
)设置的值。否则不会改变。
API 调用记录了它们调用的条件
SetLastError()
。大多数 API 在成功执行时不会将最后一个错误代码重置为 ERROR_SUCCESS
。