2016-07-07 53 views
3

我正在使用GetExitCodeProcess API來確定進程的退出原因。ExitCode -1073741502是什麼意思?

當我的進程失敗時,我得到錯誤代碼-1073741502。

如何將此值轉換爲我可以谷歌的值?

謝謝。

編輯:好的,1073741502出現在谷歌上,但不是-1073741502。爲什麼我的錯誤代碼有一個減號?

+3

'-1073741502'當打印爲十六進制是'c0000142'其[根據這個](https://support.microsoft.com/ en-us/kb/191991)意味着「DLL初始化失敗」。請點擊鏈接閱讀有關原因和可能的解決方案。 –

+0

[Decode HResult = -2147467259](http://stackoverflow.com/questions/22493524/decode-hresult-2147467259) – theB

+0

可能的重複順便提一句,GetExitCodeProcess的輸出是'DWORD',它是'unsigned int'。你必須不小心將它打印爲'signed int',這就是爲什麼你得到了負號。 –

回答

7

轉換爲十六進制,值爲0xC0000142。
Windows NTSTATUS values表明你的錯誤代碼STATUS_DLL_INIT_FAILED是:

{DLL初始化失敗}失敗動態鏈接庫%HS的初始化。該過程異常終止。

1

通常,返回碼由多個位域組成。如果我正確地完成了我的數學運算,這將轉換爲0xffffffffc0000142,它可能由0xc0000組和錯誤代碼0x0142組成。如果你是谷歌搜索代碼,也搜索十六進制字符串。

而且,果然,這會產生一擊。甚至還有似乎直接解決您的問題StackOverflow的條目:

CreateProcess succeeds, but GetExitCodeProcess returns C0000142