2010-02-02 102 views
64

我製作了一個.NET DLL文件,我想在GAC中註冊。我在Windows Server 2003命令提示符中使用了此命令。如何在GAC中註冊.NET DLL文件?

C:\"Path of dll"\> gacutil/i dllname.dll 

它說路徑不正確。

我是否需要在.NET cmd提示中使用它?如果是這樣,我無法找到.NET cmd promt'。

+1

您需要'gacutil'和'/ i'之間的空格 – GregC 2016-02-08 22:18:22

回答

16

只需使用Windows資源管理器將DLL文件拖放到文件夾C:\Windows\assembly中即可。

+2

您需要使用管理員帳戶登錄,因爲「運行方式」不適用於拖放操作。 – 2014-07-08 15:17:45

+4

這對我的結局沒有任何影響 - 庫沒有添加,沒有錯誤消息。我正在使用管理員帳戶。 – 2014-07-22 23:03:28

+4

「在早期版本的.NET Framework中,Shfusion。DLL的Windows外殼擴展使您能夠通過在文件資源管理器中拖動它們來安裝程序集。從.NET Framework 4開始,Shfusion.dll已過時。「https://msdn.microsoft.com/zh-cn/library/dkkx7f79(v=vs.110).aspx – njplumridge 2016-01-04 10:06:05

2

如果您擔心命令提示,請嘗試GACView

您尚未在DOS中正確設置PATH。您需要將路徑指向gacutil所在的位置以在DOS中使用它。

+3

沒有人應該害怕從命令提示符 – itsho 2015-01-15 15:38:59

84

您可以使用gacutil工具來做到這一點。在最簡單的形式:

gacutil /i yourdll.dll 

你找到下程序在開始菜單中的Visual Studio命令提示符 - >的Visual Studio - >Visual Studio工具

+7

Vineet似乎已經知道這 – 2010-02-02 06:59:57

+1

如果您沒有Visual Studio,您可以訪問gacutil.exe在C:\ Program Files文件(x86)\ Microsoft SDKs \ Windows \ v8.0A \ bin \ NETFX 4.0 Tools \至少這是它在Win2012R2服務器上的存在位置 – sonyisda1 2016-06-10 18:09:53

10

From Wikipedia

的Gacutil.exe是用來與GAC工作的.NET工具。通過使用命令

gacutil.exe /l "assemblyName" 

人們可以在GAC寄存器共享組件:

人們可以通過使用命令檢查共享組件的可用性GAC

gacutil.exe /i "assemblyName" 

或者使用GUI將裝配文件放入以下位置:

%windir%\assembly\ 

此實用程序的其他選項會,如果您使用/?標誌簡要描述,那就是:

gacutil.exe /? 
3

正如安藤說,只需將裝配拖放到C:\ WINDOWS \總成夾。有用。

+0

強調「拖放」 - 複製和粘貼不起作用 – Todd 2016-01-26 02:12:45

30

你需要:

  • 強名稱程序集(Visual Studio中,項目屬性,簽約標籤,請登錄大會)
  • 改變你生成事件(項目屬性,生成事件選項卡,後建立命令行)
 
    cd C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin 
    gacutil.exe /i "$(TargetPath)" /f /nologo 
    gacutil /l "$(TargetName)" /nologo 

現在,每次你建立你的項目,它會被安裝在GAC。

+1

安裝在build上的+1 – asakura89 2013-08-22 11:20:59

11

順便說一句,這些回答並不告訴你gacutil位於C:\ WINDOWS \ Microsoft.NET \ Framework \ v1.1 * 中。

我沒有在我的v2.0文件夾中。但我試圖拖動&將DLL放到C:\ WINDOWS \ Assembly文件夾中,就像前面提到的那樣,只要它是一個.NET庫,它就更容易並且工作正常。我也嘗試過一個COM庫,並且因爲它期待程序集清單的錯誤而失敗。我知道這不是問題,但我想我會提到,如果有人發現他們不能添加它,那可能是爲什麼。

-Tom

3
  • 開發運行命令提示符對於V2012或任何版本的系統上安裝

  • GACUTIL /我pathofDll

  • 輸入

完成!

+0

提及'Developer'command prompt,good!as gacutil is not available to build command prompt – Muds 2016-05-12 09:31:30

0

上述解決方案看起來非常棒。然而,簡單,所有你需要我的猜測是與它像完整路徑輸入組件名稱:

gacutil -i C:\MyDlls\GacDeployedAssemblies\dllname.dll 

注重C:\ MyDlls \ GacDeployedAssemblies

1

在在Windows下7 gacutil.exe(將程序集放入GAC)和sn.exe(確保程序集的唯一性)位於C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.0A \ bin

然後轉到gacutil的路徑如下所示在替換程序集的路徑後執行下面的命令

C:\ Program Files文件(x86)的\微軟的SDK \的Windows \ v7.0A \ BIN> GACUTIL /我

0

從發佈選項卡去申請 「與您的裝配路徑被放入GAC替換」文件點擊然後不必要的文件做排除比正常。生成項目文件。並運行項目。

+1

請格式化你正確回答 – WhatsThePoint 2017-07-25 07:16:24