我已经制作了一个.NET .DLL
文件,我想在GAC中注册。
我在Windows Server 2003命令提示符中使用了这个命令:
C:\"Path of dll"\> gacutil /i dllname.dll
它说路径不正确。
我是否需要在.NET cmd提示符中使用它?如果是这样,我无法找到.NET cmd提示符。
你可以使用gacutil
工具做到这一点。最简单的形式:
gacutil /i yourdll.dll
您可以在程序 - > Visual Studio - > Visual Studio工具下的开始菜单中找到Visual Studio命令提示符。
从发布选项卡转到应用程序文件单击然后不必要的文件执行排除比确定。构建项目文件。并运行项目。
上述解决方案看起来很棒。但是,简单来说,我想要的只是输入程序集名称及其完整路径,如:
gacutil -i C:\MyDlls\GacDeployedAssemblies\dllname.dll
注意C:\ MyDlls \ GacDeployedAssemblies
你需要:
cd C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin gacutil.exe /i "$(TargetPath)" /f /nologo gacutil /l "$(TargetName)" /nologo
现在,每次构建项目时,它都将安装在GAC上。
只需使用Windows资源管理器将DLL文件拖放到文件夹C:\Windows\assembly
中即可。
警告:
在早期版本的.NET Framework中,Shfusion.dll Windows外壳扩展允许您通过将程序集拖动到文件资源管理器来安装程序集。从.NET Framework 4开始,Shfusion.dll已过时。
资料来源:How to: Install an assembly into the global assembly cache
这些响应并没有告诉你gacutil顺便居住在C:\ WINDOWS \ Microsoft.NET \ Framework \ v1.1 *中。
我没有在我的v2.0文件夹中。但是我尝试将DLL拖放到C:\ WINDOWS \ Assembly文件夹中,如前面所建议的那样,只要它是一个.NET库,它就更容易并且工作正常。我也尝试了一个COM库,这个失败了一个错误,它期待一个程序集清单。我知道这不是问题,但我想我会提到,如果有人发现他们无法添加它,那可能就是原因。
-Tom
gacutil.exe是用于与GAC一起使用的.NET实用程序。
可以使用以下命令检查GAC中共享程序集的可用性:
gacutil.exe /l "assemblyName"
可以使用以下命令在GAC中注册共享程序集:
gacutil.exe /i "assemblyName"
或者使用GUI将程序集文件放入以下位置:
%windir%\assembly\
如果使用/?
标志,将简要描述此实用程序的其他选项,即:
gacutil.exe /?
完成!
如果您害怕命令提示,请尝试使用GACView。
您还没有在DOS中正确设置PATH。您需要指向gacutil在DOS中使用它的路径。
正如ando所说,只需将程序集拖放到C:\ windows \ assembly文件夹即可。有用。
如果在Windows 7上gacutil.exe(将程序集放在GAC中)和sn.exe(以确保程序集的唯一性)驻留在C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.0A \ bin
然后转到gacutil的路径,如下所示,在更换程序集的路径后执行以下命令
C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.0A \ bin> gacutil / i“替换为要放入GAC的程序集的路径”