2009-06-21 61 views
2

我創建了一個自制的程序集,我想我使用.Net 2.0配置工具(mscorcfg.msu)在GAC中正確安裝了它。但是,當我想在Visual Studio中引用它時,我在哪裏可以找到它?如何引用在Visual Studio中安裝在GAC中的自制程序集?

(我知道,我不應該使用GAC無論如何,但放縱我;-))

編輯:我沒有問的問題很清楚:在安裝組件安裝到GAC後,它不顯示在Project-Add Reference菜單的.NET選項卡上。

回答

4

添加引用對話框實際上看起來在註冊表中,特別是:

  • [HKEY_LOCAL_MACHINE] \ SOFTWARE \微軟\ .NETFramework \ AssemblyFolders
  • [HKEY_CURRENT_USER] \ SOFTWARE \微軟\ .NETFramework \ AssemblyFolders

要添加您的程序集,您必須編輯這些註冊表項。或者簡單地使用「瀏覽...」按鈕(取而代之)可能更具誘惑力。

+0

閱讀你的答案讓我想起了這個非常一步,我不得不完成的時候我還是GAC'd組件......我繼續和刪除我的答案。 – user7116 2009-06-21 21:18:11

+2

...或特定於版本的註冊表鍵例如SOFTWARE \ Microsoft \ .NETFramework \ v2.0.50727 \ AssemblyFoldersEx – Joe 2009-06-22 04:59:39

1

當你需要引用已被部署到GAC的程序集,您將通過在Visual Studio中添加引用對話框的瀏覽選項卡需要 瀏覽到原始項目的\ bin \ Debug目錄。

這個原因起作用的原因是,由於您已將程序集安裝到GAC中,因此它將具有強名稱,並因此具有清單中的.publickey值。

當您引用清單中包含.publickey值的程序集時,Visual Studio會假定強命名程序集很可能會部署到GAC,因此不會費心將二進制文件複製到應用程序文件夾。

取而代之的是,它將使用GAC中的版本。

0

我創建了一個完全免費的工具,可以幫助您實現目標。 Muse VSReferences將允許您從添加GAC參考菜單項目添加項目的全局程序集緩存引用。

希望這hekps,

繆斯VSExtensions

相關問題