7

UnauthorizedAccessException ASP.NET エラーを確認してください。

Access to the path 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\8909a2b1\8566823\Nop.Plugin.Feed.Froogle.dll' is denied.

私のマシンの IIS から VS 2010 IIS を介してホストされるように Web サイトを変更したため、エラーが発生しました。私のソリューションは、以前は VS 2010 IIS で動作していましたが、VS IIS から Machine IIS に戻って VS ISS に戻りました。

dll を一時ディレクトリにコピーすると、問題が発生します。

File.Copy(...

ディレクトリに対するさまざまなアクセス許可をテストしましたが、何も役に立ちませんでした。また、一時ディレクトリで目的のアクセス許可が復元されることを期待して、aspnet_regiis -i コマンドを実行しました。

「../Temporary ASP.NET ディレクトリ」を削除しても問題はありません。これは、既存のファイルを置き換えようとした場合にのみ発生します。

File.Copy("source", "c:\windows\microsoft.net\framework\v4\temporary asp.net files\...\###.dll", true);

どんな助けでも大歓迎です。ありがとう、

4

3 に答える 3

5

このまったく同じ問題のトラブルシューティングに何時間も費やしました。私の場合、dll は SourceSafe にチェックインされたソリューションからのものであり、一時フォルダーにコピーされたときに読み取り専用とマークされていました。ReadOnly 属性を削除すると、問題は解消されました...

于 2012-04-11T22:24:01.080 に答える
2

実行している IIS のバージョンについては言及していません。ただし、FileMon または ProcessMon を使用して、拒否されているユーザーとリソースを特定できます。

于 2012-02-24T18:22:36.500 に答える
1

なりすましが関係していると、これが難しくなる可能性があります。web.config のようなものを確認してください

    <identity impersonate="true"  ...

偽装されているユーザーには、一時フォルダーへのアクセス許可も必要です。再起動し、一時フォルダーを削除し、最終的に変更が反映され、このエラーなしでコンパイルされるまで再起動する必要がありました...

于 2013-01-25T18:22:03.227 に答える