解码HResult = -2147467259

时间:2014-03-18 23:53:27

标签: hresult

有人可以帮我解码这个HResult吗?这是什么意思?我知道负面意味着失败。 10位的其余部分怎么样?

我引用了MSDN HResult文章here,但我不确定如何确定我的设施和代码位是什么。

更多信息:

  

_message:“外部组件抛出异常。”
  数据:{System.Collections.ListDictionaryInternal}

4 个答案:

答案 0 :(得分:65)

我会告诉你如何做到这一点。在程序员模式“Dec”设置中将负数粘贴到Calculator(Windows)中。然后转换为“十六进制”设置。你得到的数字是:FFFFFFFF80004005。错误是80004005,即:

0x80004005
E_FAIL
Unspecified 

不幸的是,提供此错误的函数提供程序未对错误进行分类。

有用的链接:

  1. MSDN - HRESULT Format
  2. MSDN - HRESULT Error List

答案 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列表的一部分,因此未指定。