我使用的是Windows 7 Enterprise 32位。我使用过Windows命令行,也使用过VSTS 2008命令行,但是在执行gacutil.exe时,找不到命令错误。
我想知道是否需要从某处安装gacutil.exe或gacutil.exe位于我计算机的其他位置(我搜索了我的计算机,但找到了几个名为gacutil.exe的文件,我不知道哪一个应该用的)?
BTW:我正在使用.Net 3.5。
答案 0 :(得分:145)
gacutil附带Visual Studio,而不是VSTS。它是Windows SDK的一部分,可以在http://www.microsoft.com/downloads/details.aspx?FamilyId=F26B1AA4-741A-433A-9BE5-FA919850BDBF&displaylang=en单独下载。此安装将包含gacutil.exe
。但首先请在此处查看
C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin
你可能已安装它。
正如@devi提到的那样
如果您决定从现有安装中获取gacutil文件,请注意 来自.NET 4.0的是三个文件:gacutil.exe gacutil.exe.config和 1033 / gacutlrc.dll
答案 1 :(得分:59)
gacutil
答案 2 :(得分:5)
您可以在Windows SDK中使用该版本,但有时可能与您使用的.NET Framework版本不同,从而导致以下错误:
Microsoft(R).NET全局程序集缓存实用程序。版本3.5.21022.8 版权所有(c)Microsoft Corporation。版权所有。 将程序集添加到缓存失败:此程序集由比当前加载的运行时更新的运行时构建,无法加载。
在.NET 4.0中,您需要在Microsoft SDK v8.0A中进行搜索,例如: C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.0A \ bin \ NETFX 4.0工具 (在我的例子中,我只有Visual Studio 2012安装的32位版本)。
答案 3 :(得分:0)
在Windows 2012 R2上,您无法安装Visual Studio或SDK。 您可以使用powershell将程序集注册到GAC中。我不需要任何特殊安装。
设置位置“ C:\ Temp” [System.Reflection.Assembly] :: Load(“ System.EnterpriseServices,版本= 4.0.0.0,区域性=中性,PublicKeyToken = b03f5f7f11d50a3a”) $ publish =新对象System.EnterpriseServices.Internal.Publish $ publish.GacInstall(“ C:\ Temp \ myGacLibrary.dll”)