簡體   English   中英

System.IO.FileNotFoundException未處理Message =“找不到指定的模塊。 (HRESULT異常:0x8007007E)“

[英]System.IO.FileNotFoundException was unhandled Message=“The specified module could not be found. (Exception from HRESULT: 0x8007007E)”

我正在尋找新手的代碼。 我在一個名為UI的項目中有c ++代碼,它有許多依賴項,它們可以正確構建並且不會返回任何錯誤。 在Visual Studio 2008中的相同解決方案中,我創建了一個新的C#窗體表單項目,並添加了對UI項目生成的dll的引用,並添加了“using”語句。 我想要做的是提出UI項目中定義的一個對話框,所以我有類似的代碼

UIDialog uIDialog = new UIDialog(); 
uIDialog.Show();

建立。

當我在調試中運行我的項目時,當它到達“新”部分時,我得到上面的例外 - 沒有關於丟失模塊是什么的信息。

有沒有辦法找出缺少的模塊是什么,而無需深入挖掘UI項目中的代碼?

(我試圖改寫這個問題,以免它被關閉。如果有人能給出“不,沒有”的確定答案,我會發現它非常有用。感謝那些關閉了之前的人版。)

編輯:

System.IO.FileNotFoundException occurred
  Message="The specified module could not be found. 
(Exception from HRESULT: 0x8007007E)"
  Source="ui"
  StackTrace:
   at ui.UIDialog.Startup()
   at ui.UIDialog..ctor() in c:\..\ui\UIDialog.h:line 61
InnerException:

這就是問題,沒有明顯的有用信息!

這不是一個32/64位的問題 - 在到達這里之前,我有一個典型的“BadImageFormatException”,所以為了超越它我強迫一切都是32位。

您可以在引用的dll上使用MSIL反匯編程序,並檢查清單中是否存在該dll的所有依賴項。 反匯編程序是Windows SDK工具的一部分。

或者總有DependencyWalker,雖然我多年沒有使用過它。

您可以打開Fusion日志記錄以查看加載程序正在執行的操作並找出缺少的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM