为什么QT应用程序中的最后一个错误始终为零?
SetLastError(23);
qDebug() << "LastError: " << GetLastError();
预期输出:
LastError:23
实际输出:
LastError:0
关于此问题,我无法通过Google搜索。 QT是否钩住了这些功能?
最佳答案
DWORD lastError = GetLastError();
qDebug() << "LastError: " << lastError;
请务必在API调用失败后立即抓住最后一个错误。那些介入的
qDebug()
和operator<<
自己调用Windows API函数,这些函数可能会也可能不会重置上一个错误。