Windows Server 2008のC:\ Windows\Assembly「フォルダー」からDLLをアンインストールしようとしていますが、「許可が拒否されました」エラーが発生します。=を削除するにはどうすればよいですか。 DLLアプリケーション全体をアンインストールせずに?
アプリケーションベンダーから新しいDLLが送られてきましたが、古いバージョンを削除したり、これらの新しいDLLを追加したりする方法は説明されていません。グーグルもいつものように役に立たなかった...
これは以前は機能しませんでしたが、ありがたいことに私の最後の試みで機能しました。図に行く...
サーバー上でgacutil.exeを見つけ、gacutil -u dllName.DLL
を実行しました。新しいDLLは単にgacutil -i "PathAndFilenameOfNewDLL"
http://msdn.Microsoft.com/en-us/library/zykhfde0%28VS.80%29.aspx
パーティーに遅れていることはわかっていますが、gacutil.exeが存在しない場合は、Powershellを使用した別の解決策を次に示します。 Gacutilは開発ツールであり、通常は本番システムには存在しません。
昇格されたプロンプトを使用してPowerShellを右クリックし、[管理者として実行]を選択して起動します。次に、以下を入力するか、コピーして貼り付けます。
$pathToFile = 'PathAndFilename.dll'
[System.Reflection.Assembly]::Load("System.EnterpriseServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
$publish = New-Object System.EnterpriseServices.Internal.Publish
$publish.GacRemove($pathToFile)
install GACにコピーする場合は、最後の行を次のように変更します。
$publish.GacInstall($pathToFile)
Gacutil/uをcmdファイルに入れ、右クリックして[管理者として実行]を選択して実行します。これは、他のすべてが失敗した場合に機能しました。