2011-07-01 55 views
0

首先我要感謝所有程序員。混合模式應用程序初始化錯誤

我的問題很混亂。

我的系統上安裝了Windows XP SP3和.NET 3.5 SP1。

當我使用/ clr:safe選項編譯我的C++/CLI源代碼時,生成的可執行程序集效果不錯,但我的意思是運行良好,但是當我將一些本機C++和託管C++代碼混合在一起並編譯源代碼時, clr或/ clr:pure模式下,生成的程序集運行良好一段時間,然後過了一會兒,當我再次嘗試運行可執行程序集時出現以下消息:「應用程序無法正確初始化,0xc000007b。請單擊確定以終止應用程序。」

注意:只有在使用/ clr或/ clr:pure模式編譯代碼並混合本機代碼和託管代碼時,纔會顯示此錯誤消息。 我檢查並清除了我的系統中的病毒,但這個問題無法解決。 你能幫我找出真正的問題嗎?

感謝提前...


是VISUAL C++ 2008年可再發行版安裝在我的x86的Windows-XP 32位機!我正在使用Visual C++ 2008 Express SP1作爲我的開發工具。 VC++ 2008 Express SP1附帶的一些工具也不會運行,並且會出現相同的錯誤。我還注意到,只有在構建混合模式或純模式C++/CLI可執行程序集時,纔會彈出此錯誤,而不是在構建後續從安全的C#,Visual Basic或C++/CLI可執行文件中使用的DLL程序集時。

+0

運行Symantec軟件? –

+0

這與描述不太匹配,但是這個錯誤幾乎總是由於試圖在64位進程中在64位操作系統上運行32位代碼而引起的。如果EXE項目是用C#或VB.NET編寫的,那麼一定要將平臺目標設置爲x86。 –

+0

我將您的帳戶與基於cookie的帳戶合併;所以你現在應該可以編輯這個問題。 – NullUserException

回答

0

我的系統上安裝了Windows XP SP3和.NET 3.5 SP1。

您是否還安裝了與您的Visual Studio版本匹配的Visual C++ Redistributable Runtime?