2011-02-03 80 views
0

我有一個引用C++/CLI混合模式程序集的C#項目。該程序集存儲在PATH文件夾中,它也存在於GAC中,但執行時,我得到:爲什麼程序集加載程序未檢入C++/CLI混合模式程序集的GAC?

System.IO.FileNotFoundException:無法加載文件或程序集'PcsSocketCommunications500,Version = 0.0。 0.0,Culture = neutral,PublicKeyToken = null'

版本0.0.0.0是因爲C++/CLI沒有Assembly版本類,但據我所知這應該不成問題。

正在運行進程監視器我已經看到系統只是在與主進程相同的文件夾中查找程序集...我不是裝配加載的專家,但我期望至少看到一些GAC搜索和「也許」一些PATH searchs ..這就是我得到了什麼(PcsSocketCommunication500.dll是C++/CLI裝配和黑色它的工作目錄):

enter image description here

爲什麼加載器不檢查任何想法GAC還是PATH?

回答

2

公鑰=空

該組件不強命名。這意味着它不能位於GAC中,CLR不會去那裏看。不知道你在GAC中做了什麼,但它不應該是現在可以做到的。

+0

對。在編譯引用它的代碼(試圖解決問題)後,程序集已簽名並安裝在GAC中。我認爲,由於來電者知道它沒有簽名,因此沒有在GAC上進行搜索。再次感謝漢斯。 – 2011-02-07 12:07:29

相關問題