2016-01-20 81 views
0

我在Windows 7(64位)中使用visual studio 2015社區編寫了一個C++程序。當我在vs2015中編譯程序時,爲什麼會出現「應用程序無法正確初始化(0xc0000018)」

當我開始運行程序,有時程序將終止,並出現一個對話框顯示出來,說

「應用程序無法正確初始化0xc0000018」。

爲什麼我有時會得到這個錯誤而不是總是這樣? 非常感謝。

+3

顯示出現此行爲的[MCVE]。很可能你有未定義的行爲 – bolov

+0

它是一個低級操作系統內核錯誤,它出自ZwMapViewOfSection()。這是用來映射DLL的函數。你可以做的很少,你自己去絆倒這個錯誤,這是環境問題。你需要讓你的機器再次健康。專注於惡意軟件,尤其是程序員自願安裝的縮小包裝類型,劣質防​​病毒軟件可以做到這一點。 –

回答

-1

另外一個不好的應用程序本身(這應該有可能在調試跟蹤):

這可能是一個損壞的Windows安裝或Windows註冊表中爲好。你看到它僅適用於你的應用程序還是其他應用程序?

這可能是由於通過某些構建爲以固定地址安裝的DLL,它可能是病毒,惡意軟件,甚至是防病毒軟件。

提到了一些原因/解決方案,例如在這裏:https://superuser.com/questions/610495/the-application-was-unable-to-start-correctly-0xc0000018-windows-8-x64

嘗試的第一件事就是刪除註冊表鍵HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\­Microsoft\WindowsNT\CurrentVersion\Windo­­wsAPPINIT_DLLS內容 - 一些DLL文件裝載有可能引起問題。

你不會每次都看到它的原因可能是,有時在加載具有固定地址要求的DLL之前,可能會在特定地址上加載其他某個DLL,因此衝突只發生在那裏。

相關問題