有人可以帮我解码这个HResult吗?这是什么意思?我知道负面意味着失败。 10位的其余部分怎么样?
我引用了MSDN HResult文章here,但我不确定如何确定我的设施和代码位是什么。
更多信息:
_message:“外部组件抛出异常。”
数据:{System.Collections.ListDictionaryInternal}
答案 0 :(得分:65)
我会告诉你如何做到这一点。在程序员模式“Dec”设置中将负数粘贴到Calculator(Windows)中。然后转换为“十六进制”设置。你得到的数字是:FFFFFFFF80004005。错误是80004005,即:
0x80004005
E_FAIL
Unspecified
不幸的是,提供此错误的函数提供程序未对错误进行分类。
有用的链接:
答案 1 :(得分:3)
将其打印为十六进制数,然后使用VisualStudio ErrorLookup来获取消息。
答案 2 :(得分:2)
-2147467259是十六进制的80004005(通常呈现为0x80004005)。这是Win32中的"E_FAIL (Unspecified error)"。
这不是一个非常有用的错误代码,但它可能会让您更接近解决方案。
答案 3 :(得分:2)
另一种方法如下。 HRESULT的前32位应包含System Error Code。使用AND操作将从HRESULT中检索错误代码:
int result = (-2147467259 & 0xFFFF)
result
是16389,它不是System Error Codes列表的一部分,因此未指定。