在Windows 10的Visual Studio中的构建后事件中使用GACUTIL

问题描述

我有一个创建SSIS自定义任务的Visual Studio 2012项目。在构建后事件中,我有这个:-

cd $(ProjectDir)
@SET TASKDIR="C:\Program Files (x86)\Microsoft sql Server\110\DTS\Tasks\"
@SET GACUTIL="C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\gacutil.exe"
Echo Installing dll in GAC
Echo $(OutDir)
Echo $(TargetFileName)
%GACUTIL% -if "$(OutDir)$(TargetFileName)"
Echo copying files to Tasks
copy "$(OutDir)$(TargetFileName)" %TASKDIR%

曾经与Windows 7配合使用。

今天,我第一次尝试在Windows 10上执行此操作,并且得到:-

无法将程序集添加到缓存:管理员权限是 需要使用选定的选项。

如果我以管理员身份启动命令窗口并使用命令:-

C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\gacutil.exe" -if "C:\Users\Kevin\Documents\Visual Studio 2012\Projects\SSISCompressionTask\SSISCompressionTask\bin\Debug\<Task Name>.dll

有效。

从Visual Stusio的构建后事件中,如何继续将装配体放入GAC?

谢谢

解决方法

我以管理员身份启动Visual Studio,现在允许我将dll安装到GAC中,并将文件复制到Tasks文件夹中,而我没有提到,该文件夹也不起作用。

如果要确保Visual Studio始终以管理员身份运行,

开始菜单->更多->打开文件位置

Start Menu -> More -> Open file location

右键单击文件,然后选择属性。在此快捷方式标签中,选择Advanced...

Click Advanced...

在“高级属性”窗口中,选中“以管理员身份运行”按钮

Check run as administrator

好的,好的,现在您已经修改了快捷方式以始终以管理员身份启动Visual Studio。