2009-07-17 69 views

回答

8

您是否試過檢查Assembly.GlobalAssemblyCache屬性?

bool loadedFromGac = this.GetType().Assembly.GlobalAssemblyCache; 

...或:

bool loadedFromGac = Assembly.GetExecutingAssembly().GlobalAssemblyCache; 
3

使用AssembyInfo類找出你的應用程序中加載的程序集。返回的Assembly對象有一個名爲GlobalAssemblyCache的屬性,它指示你需要什麼。

MSDN Docs for Assembly

0

如果因任何原因更新的源代碼,包括這是不是一種選擇,嘗試融合日誌查看器(fuslogvw.exe)。作爲Visual Studio工具的一部分,(從Windows上的Visual Studio菜單組中打開一個工具命令提示符,讓這些工具在您的路徑上),Fusion Log Viewer記錄應用程序加載的所有程序集以及從中加載它們的位置。

多年來,它幫助我深入瞭解與拾取錯誤版本的程序集,來自意外地點的程序集等相關的一些問題。提供的信息量可能會非常大,但它爲您的應用程序或任何其他人提供了有關加載哪些DLL的明確答案。

以下是Microsoft文檔:https://msdn.microsoft.com/en-us/library/e74a18c4(v=vs.110).aspx

相關問題