GetLastError 返回错误码 转换到 文本

来源:互联网 发布:mac pp助手 编辑:程序博客网 时间:2024/05/16 01:45

https://msdn.microsoft.com/en-us/library/ms680582(v=vs.85).aspx
MSDN 上的例程,我简化一下

成功的话
控制台应该会输出 操作成功完成

#include <windows.h>#include <iostream>#include <string>using namespace std;//得到错误码的文本信息string GetLastErrorToString(DWORD errorCode){    //因为FORMAT_MESSAGE_ALLOCATE_BUFFER标志,这个函数帮你分配内存,所以需要LocalFree来释放    char *text;    FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |                   FORMAT_MESSAGE_IGNORE_INSERTS, NULL, errorCode,                   MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),                   (LPTSTR)&text, 0, NULL);    string result(text);    //结果    LocalFree(text);    return result;}int main(){    DWORD errCode = 0;    //假设错误码是 0    cout << GetLastErrorToString(errCode);    system("pause");     //暂停一下    return 0;}
0 0