1

我将一个项目从 .NET 3.5 移动到 .NET 4.6.1。现在,当我尝试构建(使用以下作为构建后事件命令)时,我收到此错误:

gacutil -if "$(TargetPath)"

命令 "gacutil -if "[xyz.dll]"" 以代码 1 退出

我引用了这个堆栈溢出答案:gacutil postbuild event exists with code 1

问题似乎是有一个新版本的 GacUtil 需要与 .NET 4.0 及更高版本的项目一起使用。

我确定这是我当前 gacutil 的路径。我的 Path 环境变量设置为:

C:\>where gacutil

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\gacutil.exe

导航到 C:\Program Files (x86)\Microsoft SDKs\Windows 后,我看到有几个不同的 SDK 版本可供选择。

  • v7.0A
  • v7.1A
  • v8.0
  • V8.0A
  • V8.1
  • V8.1A
  • V10.0A

我假设我只是在最新版本中选择 gacutil 的路径?

新的 Path 环境变量是什么:

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.7.2 Tools

4

1 回答 1

2

使用最新版本应该是安全的,我建议至少使用 v10.0A (4.6.1),因为这是 Navigator 需要的。只需确保您没有多个 .NET 版本的工具文件夹的路径,因为如果不匹配,这可能会导致安装过程中出现一些问题。

于 2019-07-10T19:42:20.267 回答