首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从0x8开始的HRESULT错误代码和以0xC开头的HRESULT错误代码有什么区别?

从0x8开始的HRESULT错误代码和以0xC开头的HRESULT错误代码有什么区别?
EN

Stack Overflow用户
提问于 2019-01-04 07:46:15
回答 1查看 1.9K关注 0票数 1

这更多的是一种好奇心,而不是其他任何东西。我一直在回顾许多Windows和HRESULT组件返回的HRESULT错误代码以表示错误。

如果我正确理解其结构,最重要的位31是错误位。如果设置了它,那么HRESULT将包含一个错误。

例如,0x80004002E_NOINTERFACE

不支持这种接口。

但是,当两个最重要的位被设置为0xC0262588时会发生什么呢?是什么让它与众不同?

上面的值似乎也转换为一个错误,即ERROR_GRAPHICS_MCA_INTERNAL_ERROR

发生内部监视器配置API错误。

编辑:https://msdn.microsoft.com/en-us/library/cc704587.aspx?f=255&MSPPError=-2147217396这样的值是无效的,但是接着又列出了多个被认为无效的值。

EN

回答 1

Stack Overflow用户

发布于 2019-01-07 09:55:04

从HRESULT定义的结构来看,0x8和0xC在"R“位上是不同的,如果设置了N位,则该位由NTSTATUS编号空间定义。在NTSTATUS定义中,0x8表示STATUS_SEVERITY_WARNING,0xC表示STATUS_SEVERITY_ERROR。

参考文献:"[MS-ERREF]:Windows错误代码

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54034910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档