« Garden Bar 08/31 | トップページ | シンBDエンカウント »

2017年9月 1日 (金曜日)

Visual Studio 2010で「LNK1168 書き込みモードで'<ファイル名>'を開けません」

Visual Studio 2010で開発をしていて、最初は正常にビルドして実行できる。
しかし、少しソースを修正して、再度ビルドしようとすると、タイトルのようなエラーが出る。

他にも、以下の症状が発生する。

・エクスプローラーで直接削除することはできるが、「最新の情報に更新」を実行すると復活する。(つまり、削除したように見えているだけで、本当は削除できていない。)
・コマンドプロンプトからdelコマンドで削除しようとすると「アクセスが拒否されました」
・アクセス権の問題と考え、所有者を表示しようとしても「現在の所有者を表示できません」
・Process Explorerからファイルハンドルを所有しているプログラムを調べると「System」

そのまま長時間放置すると、なぜか正常にビルドできるようになる。

こんな時は、「Application Experience」サービスが「無効」になっている可能性が高いので、「手動」に変更する。

「Application Experience」サービスとはプログラムの互換性に関する処理をするサービスで、本来は、何らかのアプリケーション実行時にSystemがそのサービスが起動する。
しかし、そのサービスが「無効」になっていると、当然Systemはそれを起動できない。できないので、できるまで60秒間アプリケーションのファイルハンドルを確保したまま待ち続ける。
つまり、Systemが「60秒間アプリケーションのファイルハンドルを確保したまま待ち続ける 」ため、上記の症状が発生するのである。

|

« Garden Bar 08/31 | トップページ | シンBDエンカウント »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/162619/65735398

この記事へのトラックバック一覧です: Visual Studio 2010で「LNK1168 書き込みモードで'<ファイル名>'を開けません」:

« Garden Bar 08/31 | トップページ | シンBDエンカウント »