読者です 読者をやめる 読者になる 読者になる

kondoumh のブログ

- とあるソフトウェアエンジニアのめったに更新されないブログ -

Visual C++ 14 (Visual Studio 2015) 更新ファイルがないのに実行のたび毎回リビルドされて困ったら

C++ Visual Studio

Visual Studio 2015 Community が利用可能になったので、早速インストールしました。2015 では、C++ や F# がオプション扱いになり、C# / Visual Basic は強制的にインストールされます。ちょっとわかりづらいし、Visual Basic 入れたくないし。Windows 7 に入れた自分が悪いのか、スタートメニューに Visual Studio のアイコンも登録されません。こんな時はあわてずに、「プログラムとファイルの検索」で devenv.exe と打ち込みましょう (Visual Studio の実行ファイル名です) 。無事起動しましたので、タスクバーに常に表示してしまえば問題ありません。

iEdit のプロジェクトをマイグレーションしました。移行は問題なかったのですが、「デバッグなしで開始 (Ctrl + F5)」で実行しようとすると、毎回ソリューションのリビルドが走るようになってしまい、非常にうざい状況になってしまいました。

ぐぐったところ「ソリューションのクリーン」をやれば解消するとか、 存在しない .ico, .bmp ファイルなどのリソースが .vcproj に含まれてる場合発生するなどの情報があります。確かに1個だけ icon1.ico という存在しないリソースの定義が、.vcproj に含まれていたのですが、それを消しても解消しません。

2013 の時も同じトラブルにあったのですが、どのようにして回避したか思い出せません。なんか自分でツイートしてたのを探してみました。

自分でも何を言ってるのかわかりませんが、マイグレーション直後にビルドして実行しようとすると、下のようなダイアログが出て、これに何の気なしに「はい」しちゃうとどうやら毎回ビルドになるみたいです。

f:id:kondoumh:20150725160917p:plain

なので、このダイアログをどうにかもう一度だして、「いいえ」しないといけない。

探したところ、「ツール」→「オプション」→「プロジェクトおよびソリューション」→「ビルド/実行」の設定にありまし た。「実行時に、プロジェクトが最新の状態でない時」のドロップダウンリストが「常にビルドする」になってます。

f:id:kondoumh:20150725161745p:plain

これを「ビルドするかどうかを確認する」にしましょう。

こうです。

f:id:kondoumh:20150725161823p:plain

この上で、もう一度「デバッグなしで実行」するとあのイミフなダイアログと再会できます。

f:id:kondoumh:20150725161936p:plain

今度は、「いいえ」を押します。「今後このダイアログを表示しない」をチェックして同じことを2度と聞かれないようにしておきましょう。

以上で、無事解消しました。

f:id:kondoumh:20160410130320p:plain