C# gacutil未被识别为内部或外部命令?

C# gacutil未被识别为内部或外部命令?,c#,console,C#,Console,我创建了一个控制台应用程序,添加了外部Dll参考。 现在我必须将外部Dll部署到程序集。 当我试图在GAC中添加我的dll时 GACUTIL.EXE /i MyLibrary.dll 命令将我的dll添加到程序集中,它向我显示错误 *gacutil is not recognized as an internal or external comma* 如何修复?“但我如何在客户端服务器上部署dll,因为他可能没有visual studio” 如果我没记错的话,gacutil也存在于C

我创建了一个控制台应用程序,添加了外部Dll参考。
现在我必须将外部Dll部署到程序集。
当我试图在GAC中添加我的dll时

  GACUTIL.EXE /i MyLibrary.dll  
命令将我的dll添加到程序集中,它向我显示错误

*gacutil is not recognized as an internal or external comma*
如何修复?

“但我如何在客户端服务器上部署dll,因为他可能没有visual studio”

如果我没记错的话,gacutil也存在于C:\windows\Microsoft.Net\some文件夹中\

另一种方法:如果使用primitive.cmd=>可以将gacutil.exe和gacutil.exe.config与脚本捆绑在一起

还有另一种方法:如果您使用的是windows installer,它内置了对间隙程序集的支持

另外,请注意,x86和x64程序集有不同的GAC(如果您的程序集是MSIL,请忽略)。

可能重复:
(至少从.Net 3.0开始,gacutil不再是客户端操作系统的一部分,您需要使用合适的安装程序,或者安装windows SDK,这显然是过分了)

对于windows 10路径是:
C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\Bin

如果您已经安装了Visual studio,则可以使用而不是普通的
命令提示符
直接访问
gacutil

您可以在此处找到
Developer命令提示符


开始菜单>Visual Studio 20XX>VS20XX的开发者命令提示符

我们运行Windows Server 2016的产品箱没有用于全局程序集缓存(GAC)的MS SDK工具!!!所以我复制了整个目录

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\ 
从我的开发笔记本电脑(安装了VS 2017的Windows 10)到我希望将.dll注册到生产服务器全局程序集的生产服务器。

我需要注册的程序集是:_Net35scannersMonitor.dll(x86 dotNet 2.0)和_Net40scannersMonitor.dll(x64 dotNet 4.x)

在复制的gacUtil所在目录的提示下,我输入:

  gacutil -i D:\resource\Library\_Net35scannersMonitor.dll

我使用相同的gacUtil.exe(文件版本4.6.1055.0)来完成这两项工作。它们都位于正确的位置dotnet2x86(C:\Windows\assembly)和dotnet4(C:\Windows\Microsoft.NET\assembly\gacmsil)—— 我不必使用2个不同的gacUtil.exe

结果:


结论:即使您的机箱没有安装VS,您也可以从安装了VS的PC上复制gacutil.exe及其bin。无需特殊下载/安装。然后您可以将复制的gacutil用于x86和x64程序集

为ex
“C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\Bin\NETFX 4.0 Tools\gacutil.exe”提供gacutil.exe?类型的完整路径
我已尝试使用Visul studio命令提示符,但该如何在客户端服务器上部署我的dll,因为他可能没有visual studio。如果您有答案,请告诉我tellgautil.exe是Windows SDK工具,它在目标计算机上不可用。改为创建一个安装项目。在我的客户端服务器中,“C:\Program Files(x86)\Microsoft SDK\Windows\v6.0A\bin”为空没有gac文件确实没有简单的方法来获取显示gac中内容的工具?在该位置没有“Microsoft SDK”文件夹。
  gacutil -i D:\resource\Library\_Net40scannersMonitor.dll