1

プロジェクトを .NET 3.5 から .NET 4.6.1 に移動しました。ビルドしようとすると (ビルド後のイベント コマンドとして以下を使用)、次のエラーが発生します。

gacutil -if "$(TargetPath)"

コマンド「gacutil -if "[xyz.dll]"」はコード 1 で終了しました

このスタック オーバーフローの回答を参照しました: gacutil postbuild event exists with code 1

問題は、.NET 4.0 以降のプロジェクトで使用する必要がある GacUtil の新しいバージョンがあるという事実にあるようです。

これが現在の gacutil へのパスであると判断しました。私のパス環境変数はこれに設定されています:

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

最新バージョンを使用しても安全です。Navigator が必要とするため、少なくとも v10.0A (4.6.1) を使用することをお勧めします。いくつかのバージョンの .NET のツール フォルダーへのパスがないことを確認してください。パスが一致しないと、インストール中に問題が発生する可能性があります。

于 2019-07-10T19:42:20.267 に答える