我有一個引用程序集「Microsoft.Xna.Framework,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 6d5c3888ef60e27d」的應用程序。我已經創建了一個安裝程序項目,可以在GAC中安裝此程序集(通過運行XNA redist安裝程序)。.net運行時試圖使用程序集的錯誤版本
但是,當第一次使用此程序集時,JITing期間收到異常。然後我試圖NGEN的圖像,以及NGEN提供了以下錯誤信息:
Failed to load dependency Microsoft.Xna.Framework of assembly x,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null because of the following
error : The specified module could not be found. (Exception from HRESULT: 0x8007007E)
注意,版本是1.0.0.0和公鑰缺失,和假裝配不存在。什麼會導致JITer和ngen試圖加載這個壞版本的程序集?
程序集的正確版本位於GAC中。我已經在Reflector中打開了我的圖像,並且參考在那裏正確顯示。我還驗證了依賴關係層次結構中沒有其他程序集加載僞造的1.0.0.0版本。事實上,1.0.0.0版本並不存在於任何地方,無論是在開發盒還是測試機器上。
但是,當試圖擴展對測試機器上Microsoft.Xna.Framework的引用時,Reflector認爲(正確)引用的程序集版本是2.0.0.0,但即使我可以看到它也找不到它在GAC中查看資源管理器中的c:\ windows \ assembly時。
請幫忙。
複製本地參考可能嗎? – Pondidum 2009-01-16 10:33:00
引用的程序集旨在位於GAC中,我可以在c:\ windows \ assembly中看到它。 – erikkallen 2009-01-16 10:36:45