最近コンピュータを切り替えて、すべてのプロジェクトを新しいローカルドライブにコピーしました。現在使用しているコンピューターを再フォーマットしたので、かなりクリーンなマシンでした。すべてが正常に機能しているように見えましたが、古いマシンから実行していたプロジェクトの1つを開くと、コンパイルできなくなり、次のエラーメッセージが表示されます。出力ファイルに書き込めませんでした 'c:\ Users\user\Documents\Projects\RegressionWeb\OnetouchUpload\obj\debug\OneTouchUpload.dll '-'アクセスが拒否されました。 '
ソリューションに含まれるプロジェクトごとに、このようなエラーが発生します。このエラーも発生します:デバッグ情報ファイルの作成中に予期しないエラーが発生しました 'c:\ Users\user\documents\projects\RegressionWeb\RegressionWeb\obj\Debug\RegressionWeb.PDB'アクセスが拒否されました
私は高低を検索しましたが、特にASP.NETとIISに関連してオンラインで見つけた同様の問題は、どちらも私のプロジェクトとは関係ありません(私のプロジェクトは、ほとんどがNUnitテストのクラスライブラリであり、いくつかのサポートクラスがあります)。
私はローカルマシンの管理者です。 takeown/f。\RegressionWeb/ r/dyを使用してプロジェクト内のすべてのファイルの所有権を取得し、読み取り専用のステータスがないことを確認しようとしましたが、読み取りを変更しようとすると、次のファイルでエラーがスローされました。 -親フォルダーのプロパティのみ:ファイルへの属性の適用中にエラーが発生しました:C:...\Regressionweb.sln.DotSettings.userアクセスが拒否されました
基本的に、このプロジェクトは完全に機能しており、古いコンピューターからのエラーはありませんでした。すべてをコピーした後、このDotSettings.userファイルは変更されず、VisualStudioはどのdllファイルにも書き込むことができません。答えは、どこかのVisualStudio設定にあるに違いないと確信しています。ありとあらゆる提案をいただければ幸いです。
カールはそれが正しいと思います。私も同じような状況にありましたが、問題のファイルを削除し、ソリューションをクリーンアップしてから再構築しました。プロジェクトでそのファイルが必要な場合は、ファイルを再作成する必要があります。私の場合、再作成されなかったので必要ありませんでしたが、プロジェクトは問題なく実行されました。
もう1つお勧めします。親フォルダーの読み取り専用属性をオフに選択し、この設定を選択してすべてのサブフォルダーとファイルを再帰的に処理している可能性がありますが、それが起こっていることを意味するわけではありません。すべてのサブフォルダーとファイル(特にエラーとして切り取られているもの)について、それぞれを個別に検査し、読み取り専用属性がオフになっていることを確認します。
アプリプールのユーザーが%TMP%/%TEMP%フォルダーにアクセスできない場合にも、同じエラーが表示されることがあるようです。
アプリプールが実行されているユーザーの一時フォルダーに対するIIS_IUSRSの読み取りおよび変更アクセスを許可する必要があります。
これは、アプリプールユーザーのプロファイルの一時フォルダーである可能性があります。 c:\ Windows\ServiceProfiles\NetworkService\AppData\Local\Temp、またはc:\ windows\tempのシステム一時フォルダ。
私のお金はあなたのファイルにあり、読み取り専用です。それらが読み取り専用であることを確認して変更するか、ファイルをソース管理システムに追加して、それによって処理されるようにします。
これに関連しているかどうかを確認してください: 出力ファイルに書き込めませんでした-アクセスが拒否されました 。それは追跡するのに少しバガーになるでしょう。この場合、プロジェクトはdllを自己参照し、ファイルへのアクセスを妨げています。
Visual Studioを閉じてから再度開くことでこれを機能させることができましたが、VisualStudioを「管理者として」実行するように注意してください。これを行うには、[スタート]メニューから[Visual Studio]を右クリックし、[管理者として実行]を選択します。