AssemblyPath パラメーターとしてどのパスを Publish.GacRemove 関数に渡すべきですか?
質問
使いたいのですが、 Publish.GacRemove GAC からアセンブリを削除する機能。しかし、引数としてどのようなパスを渡せばよいのかわかりません。
元の DLL へのパス (GAC にインストールした後に削除した場合はどうなりますか?) にする必要がありますか? それとも GAC 内のアセンブリへのパスにする必要がありますか?
アップデート:
ついに使いました これらの API ラッパー.
解決
私が使用しているのは、 GacInstall
アセンブリを公開するには、アセンブリを公開しますが、gac にインストールすると、アセンブリの「一時的な」コピーを削除してしまうことがあります。
そして、gac からアセンブリをアンインストールしたい場合、元のパスにファイルがありません。を取得できないように見えるため、これにより問題が発生しています GacRemove
元のファイルを保持しない限り、アセンブリをアンインストールする方法。
結論:はい、元の DLL へのパスを指定する必要があります。(後で移動/削除しないようにしてください)。削除した場合は、GAC から元のパスにファイルをコピーしてみてください。次のコマンドを使用してアンインストールできるはずです。 GacRemove
.
他のヒント
それについては正確にはわかりませんが、GacRemove は gacutil /u と同じことを行うはずだと思います。したがって、これは DLL のパスである必要があります。ただし、同じ DLL ファイルである必要はありません。重要なのは DLL の一意の ID であるため、オリジナルのコピーで十分です。
所属していません StackOverflow