【问题标题】:What does ExitCode -1073741502 mean?ExitCode -1073741502 是什么意思?
【发布时间】:2016-11-09 19:52:30
【问题描述】:

我正在使用 GetExitCodeProcess API 来确定进程的退出原因。

当我的进程失败时,我收到错误代码 -1073741502。

如何将这个值转换成我可以用 google 搜索到的值?

谢谢。

编辑:嗯,1073741502 出现在 Google 上,但不是 -1073741502。为什么我的错误代码有一个减号?

【问题讨论】:

  • -1073741502 以十六进制形式打印时为c0000142,其中according to this 表示“DLL 初始化失败”。请点击链接了解原因和可能的解决方案。
  • 顺便提一下,GetExitCodeProcess 的输出是DWORD,即unsigned int。您一定是不小心将其打印为 signed int,这就是您得到减号的原因。
  • -1073741502 没有出现在谷歌上,因为减号前缀不包括搜索词,这反过来意味着您正在搜索空字符串,因此没有得到任何结果。如果你用引号“-1073741502”将数字括起来,你会得到结果。

标签: windows api exit-code


【解决方案1】:

转换为十六进制,值为 0xC0000142。
Windows NTSTATUS values 表明您的错误代码为 STATUS_DLL_INIT_FAILED 即:

{DLL 初始化失败} 动态链接库 %hs 的初始化失败。进程异常终止。

【讨论】:

    【解决方案2】:

    通常,返回码由几个位域组成。如果我的数学运算正确,这将转换为0xffffffffc0000142,它可能由一组0xc0000 和错误代码0x0142 组成。如果您在谷歌上搜索代码,请同时搜索十六进制字符串。

    而且,果然,这会产生打击。甚至有一个 StackOverflow 条目似乎可以直接解决您的问题:

    CreateProcess succeeds, but GetExitCodeProcess returns C0000142

    【讨论】:

      猜你喜欢
      • 2017-06-18
      • 1970-01-01
      • 1970-01-01
      • 2011-08-12
      • 2017-06-11
      • 2018-03-05
      • 2023-03-27
      • 1970-01-01
      • 2013-03-09
      相关资源
      最近更新 更多