剧集

HRESULT 错误代码

HRESULT 错误代码中的 32 位具有意义,使读者能够进一步了解错误。

注意:

第 32 位(顶部位)指示是否发生错误。 这就是为什么错误 0x8xxxxxxx 的原因。
16-26 位是设施 - 原始 API(Win32、CLR、XAML 等)。
0-15 位是(错误)代码。

常见的 NULL 设施错误代码

名称描述
S_OK操作成功0x00000000
S_FALSE操作成功,但未返回结果0x00000001
E_ABORT操作已中止0x80004004
E_FAIL未知故障0x80004005
E_NOINTERFACE不支持此类接口0x80004002
E_NOTIMPL未实现0x80004001
E_POINTER无效的指针0x80004003
E_UNEXPECTED意外失败0x8000FFFF

常见的 Win32 设施错误代码

这些是通过将系统错误代码传递给HRESULT_FROM_WIN32

名称描述
E_ACCESSDENIED一般性的“访问被拒”错误0x80070005
E_HANDLE无效的句柄0x80070006
E_INVALIDARG一个或多个参数无效0x80070057
E_OUTOFMEMORY无法分配必要的内存0x8007000E

相关链接:

HRESULT
HRESULT 设施 - 按值
HRESULT 设施 - 按名称