FormatMessage声明如下:
WINBASEAPI
DWORD
WINAPI
FormatMessageA(
DWORD dwFlags,
LPCVOID lpSource,
DWORD dwMessageId,
DWORD dwLanguageId,
LPSTR lpBuffer,
DWORD nSize,
va_list *Arguments
);
WINBASEAPI
DWORD
WINAPI
FormatMessageW(
DWORD dwFlags,
LPCVOID lpSource,
DWORD dwMessageId,
DWORD dwLanguageId,
LPWSTR lpBuffer,
DWORD nSize,
va_list *Arguments
);
#def UNICODE
# FormatMessage FormatMessageW
#
# FormatMessage FormatMessageA
#end // !UNICODE
例子如下:
#001 //系统信息提示
#002 //蔡军生 2007/11/28 qq:9073204 深圳
#003 void TestErrorInfo(void)
#004 {
#005 //进行出错
#006 (!CreateDirectory(_T("c:\\"),0))
#007 {
#008 TCHAR szBuf[128];
#009 LPVOID lpMsgBuf;
#010 DWORD dw = GetLastError;
#011
#012 FormatMessage(
#013 FORMAT_MESSAGE_ALLOCATE_BUFFER |
#014 FORMAT_MESSAGE_FROM_SYSTEM,
#015 NULL,
#016 dw,
#017 MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
#018 (LPTSTR) &lpMsgBuf,
#019 0, NULL );
#020
#021 wsprf(szBuf,
#022 _T("%s 出错信息 (出错码=%d): %s"),
#023 _T("CreateDirectory"), dw, lpMsgBuf);
#024
#025 LocalFree(lpMsgBuf);
#026
#027 //输出提示
#028 OutputDebugString(szBuf);
#029 }
#030
#031 }
后输出下面提示信息:
CreateDirectory 出错信息 (出错码=5): 拒绝访问
最新评论