ユーザモードでプロセス実行時に「lib\net45\Main.xaml へのアクセスが拒否されました」エラーが発生

:grey_question: Question

ユーザーモードでロボットをインストールしたところ、サービスモードでは実行できていたプロセスが以下のエラーで実行できなくなりました。

エラーメッセージ:
パス ‘C:\Users<ユーザ名>.nuget\packages<プロジェクト名><バージョン>\lib\net45\Main.xaml’ へのアクセスが拒否されました。

:bulb: Answer

原因

ロボットを​過去にサービスモードでインストールした実績があり現在ユーザーモードで使用している場合、本エラーが発生する場合があります。

サービスモードではパッケージがSYSTEMユーザー権限で展開されますが、ユーザーモードではUSER権限でアクセスするためです。

解決策

パッケージフォルダ「C:\Users<ユーザ名>.nuget\packages\」のバックアップをとりその後削除してください。バックアップは何らかの問題が発生した場合に元に戻すためです。

次回のプロセスの実行時にはUSER権限でパッケージが展開されるため解決が期待できます。

なお次回のプロセスの実行時には全てのパッケージのダウロードが行われるため時間を要します。

参考:

「移行後に NuGet パッケージにアクセスできない」