このエラーコードは「アクセスが拒否されました」を意味し、ネット上のどこにでも解決策が示されます(例 https://stackoverflow.com/questions/3808954/dllunregisterserver-failed-with-error-code-0x80070005 )は、管理者権限でコマンドを開くことです。ただし、私の場合、管理者権限で開かれたcmdでも同じエラーが発生します(回答は https://stackoverflow.com/questions/7985755/how-to-detect-if-cmd- is-running-as-administrator-has-elevated-privileges )。
両方とも
regsvr32.exe "C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll"
そして
C:\windows\SysWOW64\regsvr32.exe "C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll"
同じエラーメッセージで失敗し、指定されたモジュールはロードされましたが、DllRegisterServerの呼び出しがコード0x80070005で失敗しました。
http://www.cryer.co.uk/brian/windows/troubleshooting/nt4_dllregisterserver_in_com_failed_0x80070005.htm に記載されているように、レジストリアクセスを監視しようとしましたが、ACCESS DENIED
またはACCDENIED
は、結果リストの結果になります。
編集:私は今でも試しました
runas /user:Administrator "regsvr32.exe \"C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll\""
それ自体が管理者として実行されたcmd内からでも、同じエラーが発生します!
管理者特権のコマンドプロンプトからregsvr32
コマンドを実行します。
コンテキストメニューから[Start > All Programs > Accessories', then right-click
コマンドプロンプトand select
管理者として実行]を選択します。最後に、コマンドを入力します。
エラー0x80070005
はPermission Deniedフォルダーまたはファイル(通常はキャッシュファイル)へのアクセスを意味します。
/Users/Public/Application Data/Package Cache
フォルダーに移動し、そこのフォルダーに適切な権限があることを確認します。そうでない場合は、それらを削除して再実行します。
wine
を使用する場合も同様です。
chmod -v 755 ~/".wine/drive_c/users/Public/Application Data/Package Cache"/*
それ以外の場合は、ログファイルで詳細を確認してください。