2016-02-05 64 views
1

我有一個爲wince 5.0開發的應用程序。 EXE大部分時間都正常工作。但是,如果測試人員對Pocket PC進行warmboot並運行EXE,則會出現錯誤。找不到* .exe(或它的一個依賴項)win ce錯誤

找不到* .exe(或其組件之一)。確保路徑和 文件名是正確的,並且所有必需的庫都是 可用。

如果他們點擊「ok」作爲錯誤消息,EXE將正常工作。我們無法發佈此錯誤消息的應用程序。有人知道爲什麼會發生這種情況,以及如何解決它?

+0

在錯誤消息中單擊的exe文件無法找到?你的exe位於何處?你是從windows-explorer啓動它,然後雙擊?你確定這是一個warmboot,而不是冷啓動,一切都安裝完畢嗎?當未安裝緊湊框架或缺少某些其他依賴關係(dll)時,可能會出現此錯誤。 – etalon11

回答

1

我只能想象該exe使用的API或DLL在重新啓動後還沒有準備好。某種競速條件。

當Windows CE/Mobile啓動時,並不是所有API和DLL都立即加載。 StartUp進程並行處理幾個驅動程序和進程。如果依賴於另一個API/DLL的應用程序自動啓動,它應該檢查是否所有需要的資源都已準備好。 isAPIready()參見https://msdn.microsoft.com/en-us/library/ms885686.aspx

如果exe從外部存儲卡(或輔助卷)自動啓動,則可能會發生另一個可能的問題。內存驅動程序可能尚未完全加載並且無法找到exe。

上面假設你從init或StartUp啓動exe。如果進程嘗試加載DLL(外部運行時)或OS未找到的API,則通常會出現錯誤消息。

相關問題