ビルド時に出力ファイルがロックされエラーとなる
質問
2010年7月8日木曜日 9:24
環境 WndowsXPsp3,vs6.0,vs2003,vs2005,vs2008,vs2010
VS2010 C#で何度かデバッグ;コード修正を繰り返しているうちに下記エラーが出るようになりVSを再起動しないとビルドできなくなりました。
エラー
ファイル”obj\x86\Debug\ターゲットexe]”を"bin\Debug\ターゲットexe]”にコピーできません。別のプロセスで使用されているためプロセスはファイル 'bin\Debug\ターゲットexe]”にアクセスできません。
ロックしているプロセスを調べるとdevenv.exeでした。
VS起動直後に最初のビルドは成功しますが、その後コードを弄ってデバッグ実行を行うとそれ以降上記エラーでデバッグ実行できない状態です。Visual C;;のフォーラムで;たような現象が報告されていますが、OSがちう&該当ファイルを使用中のプロセスは無いと書かれているので同一ではないようです。
新しいプロジェクトを用意してもデバッグ・修正を繰り返しているうちに同様な現象となります。発生タイミングははっきりと分かりません。
http://social.msdn.microsoft.com/Forums/ja-JP/msbuild/thread/823bdecb-82ed-4b1a-a645-9bd1ada1762b
上記でほぼ同一?と思われる質問がありますが解決出来ていないようです。どなたか情報をお持ちの方はおりませんでしょうか?
すべての返信 (3)
2010年7月13日火曜日 7:54 ✅回答済み
質問ン同様の対処方法でしかありませんが、下記のマネはしたことがあります。
「Unable to copy from obj\debug to bin\debug」
http://social.msdn.microsoft.com/Forums/en-US/Vsexpressinstall/thread/5b71eb06-5047-483d-8fd3-b75c102d41e9
後はこんな情報がありました。
「Cannot build - EXE file lock by another process」https://connect.microsoft.com/VisualStudio/feedback/details/534247/cannot-build-exe-file-lock-by-another-process?wa=wsignin1.0
※Microsoft社のフィードバック用サイトです。タイトルでBingっていただければ上位に出ますので、ログインできなければキャッシュでご覧ください。
2010年7月13日火曜日 5:35
情報を追加します。
VS2010の’出力’に表示されているエラーです。
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(2868,9): error MSB3021: ファイル "obj\x86\Debug\ターゲットexe]" を "bin\Debug\ターゲットexe]" にコピーできません。別のプロセスで使用されているため、プロセスはファイル 'bin\Debug\ターゲットexe]"にアクセスできません。
ソリューション内のプロジェクトは7プロジェクトで
Windowsフォームアプリケーション×1
クラスライブラリ×6
です。現状ビルド前に[ターゲットexe]をリネーム(別APPでファイル名に数字を付けビルドの度にインクリメント)→別のフォルダにmoveしてビルドしています。
情報お待ちしております。
2010年7月13日火曜日 8:28 | 1 票
Chukiさん情報有難うございます。
https://connect.microsoft.com/VisualStudio/feedback/details/534247/cannot-build-exe-file-lock-by-another-process?wa=wsignin1.0
上記サイトの回避策を行ったところ現象が発生しなくなりました。
行ったことは
[assembly: AssemblyVersion("1.0.*")]→[assembly: AssemblyVersion("1.0.0.0")]
としました。
まだ数回のビルドしか行っていませんので今後も現象が出ないとは言い切れませんが暫く様子を見てみます。