下面是一个C++的示例代码,演示了如何使用GetLastError函数获取具体的错误信息:

#include <windows.h>
#include <iostream>

int main()
{
    HANDLE hFile = CreateFile("nonexistent.txt", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
    if (hFile == INVALID_HANDLE_VALUE)
    {
        DWORD dwError = GetLastError();
        LPVOID lpMsgBuf;
        FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
            NULL, dwError, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&lpMsgBuf, 0, NULL);
        std::cout << "Error: " << dwError << " - " << (LPCTSTR)lpMsgBuf << std::endl;
        LocalFree(lpMsgBuf);
    }
    return 0;
}

在这个示例中,我们尝试打开一个不存在的文件,如果打开失败,我们使用GetLastError函数获取错误代码,然后使用FormatMessage函数将错误代码转换为可读的错误消息,并将其输出到控制台

GetLastError获取具体错误信息列子 C++

原文地址: https://www.cveoy.top/t/topic/dexS 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录