1

WiXGAC に .dll とパブリッシャー ポリシーをインストールしようとしている単純なインストーラーを開発しています。

インストーラーを使用して GAC に .dll を正常に追加しました。しかし、Visual Studio の PostBuild イベントを使用して msbuild コマンドを実行したいと考えています。私がする必要があることの順序は次のとおりです。

  1. publisher policyVisual Studio の Post ビルド イベントを作成します。

  2. コマンドを実行するal /link:the.config /out:the.policy.dll /keyfile:thekey.snk /platform:x86

  3. 特定の GACUTIL を使用してポリシーを公開します。

私が正しければ、実行するgacutil -i Policy.1.0.TestLibrary.dllと、Visual Studio はこのポリシーを新しい GAC 1にインストールし、古いものを使用したい2

ビルド後のイベントで特定の gacutil を使用するように Visual Studio に指示するにはどうすればよいですか?

PostBuild イベントでこれを試しました:

al /link:"$(SolutionDir)"TestLibrary.dll.config /out:"$(SolutionDir)"Policy.1.0.TestLibrary.dll /keyfile:"$(SolutionDir)"sgKey.snk /platform:x86

しかし、得るThe command "...." exited with code 9009.

また、Library.v1.0.dll を古い GAC で発行してから、Library.v2.0.dll を新しい GAC にインストールした場合、v1.0 から v2.0 への発行者ポリシーを作成すると、お互いを見つける?

[1]: .Net Framework 4.0 以降で使用される GAC。
[2]: .Net Framework 3.5 以下で使用される GAC。

4

1 に答える 1

0

問題は解決しました。ポリシーに矛盾があり、それが機能していなかった理由です...

于 2013-08-05T07:18:22.143 に答える