原文地址:http://blog.csdn.net/clever101/article/details/3115857
很多时候要使用GetLastError函数来获取函数调用的出错代码,但仅仅是代码并不够,我们还需要知道错误代码所代表的具体信息。在《Windows核心编程》中提到过一种办法,现整理代码如下:
LPVOID lpMsgBuf;
DWORD dw = GetLastError();
FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM,
NULL,
dw,
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
(LPTSTR) &lpMsgBuf,
0, NULL );
MessageBox((LPCTSTR)lpMsgBuf, "系统错误", MB_OK|MB_ICONSTOP);
LocalFree(lpMsgBuf);