web-dev-qa-db-ja.com

コードの変更がある場合、実行前にVisual Studio 2010はビルドされません

私は何年もF5(デバッグ開始)を使用してコードをビルドし(古くなっている場合)、デバッグします。これはVS 2010でも機能していましたが、今日ではビルドなしでデバッグを開始します。私がプロジェクトをきれいにしてから、ビルドする代わりにF5キーを押して実行すると、実行するexeが存在しないというエラーメッセージがスローされます。最初にビルドするにはどうすればよいですか?何が変わったのでしょうか?

125
jamone

ツール+オプション、プロジェクトとソリューション、ビルドと実行。 「実行時、プロジェクトが古い場合」=常にビルドします。その下のもの=起動しないでください。

165
Hans Passant

この問題が発生したため、Configuration Managerであることが判明しました。最近、Debug | Mixed CPUからDebug | Any CPUに変更しましたが、プロジェクトはこの構成でビルドするように設定されていませんでした

118
Tim

構成マネージャーを開き、スタートアッププロジェクトのビルド列のチェックボックスがオンになっているかどうかを確認します。私は同じ問題を抱えていましたが、チェックボックスがアクティブではなかったので、私はそれをチェックし、今では動作します!

21
Michael Scherf

上記とは別に、「実行時のスタートアッププロジェクトと依存関係のビルドのみ」がオフになっていることも確認します([ツール]-> [オプション]-> [プロジェクトとソリューション]-> [ビルドと実行])

16
Alo

私もこの問題を抱えていました。提案されたすべてが役に立たないことを確認しました。私のPCの時計が約12時間進んでいて、ネットワークドライブに保存していたことがわかりました。ファイルのタイムスタンプが異常であり、VSはファイルが最新であるため、プロジェクトをビルドする必要があるとは考えていませんでした。

9
Vinnie

しばらくの間、私のラップトップ(デュアルコア2 ghz、2 Gb ram)がデスクトップ(16 Gb ramを搭載したクアッドコア3 GHz)よりも速くWebサイトをコンパイルした理由について、私は常に混乱しています。両方にSSDディスクがあります。ビルドオプションはすべて正しく設定されます(同じ、コアカウント=並列ビルド)が、ラップトップは数秒でサイトを実行し、dekstopは約30秒でサイトを実行します。

サイトの「プロパティページ」の下に追加オプションが見つかりました。ビルド設定の下で、ラップトップは「ビルドなし」に設定され、デスクトップは「ビルドと実行」に設定されました。コンパイラエラーをチェックせずにサイトがラップトップで実行された後にのみ検出されました。

将来的に誰かを助けるかもしれないので、私はこの投稿にそれを追加すると思いました

3
Jeggs

もう1つの確認ポイントは、ソリューションの[プロパティページ]-> [構成プロパティ]-> [構成]です。[ビルド列]の下にあるすべてのチェックボックスが、再コンパイルする必要のあるプロジェクトに対応していることを確認してください。

2
Daniel Nguyen

私にとっては、ビルド構成設定のために起こっていました。私のビジュアルスタジオソリューションには、C#プロジェクトとC++プロジェクトが混在したプロジェクトがいくつかあります。奇妙な理由で、Visual StudioはデフォルトではC++プロジェクトをビルドしないことを好みますが、これはビルド構成設定によって明らかです。新しいC++プロジェクトをソリューションに追加した直後に気付きました。ソリューションに新しいC#プロジェクトを追加する際にVSが同じアプローチに従わない理由はわかりません。

ソリューションエクスプローラーでソリューションファイルを右クリック->コンテキストメニューでプロパティをクリック->左ペインで構成プロパティノードを選択->構成ノードを選択ソリューション内のすべてのプロジェクトのリストが表示されます。 LearnDsの最初のプロジェクトはC++プロジェクトです。最初の行のビルド列のチェックボックスに注意してください。チェックされていません。これが、Visual Studio 2010が(F5を押して)C++プロジェクトをビルドしなかった理由で、最後に正常にビルドされてからの変更が含まれています。

enter image description here

対応するチェックボックスをチェックし、ソリューションのビルド構成設定を保存した瞬間、機能しました。 VSは最後にビルドされてから新しい変更があることを検出できるため、F5を押すたびに以下のプロンプトが表示されます。このプロンプトは、Toolsメニュー-> Optionsサブメニュー-> Projects and Solutionsノード-> Build and Run Node-> "実行時、プロジェクトが古くなったとき"に設定されています Prompt to build。このプロンプトが気に入らない場合は、Always build

enter image description here

1
RBT

私は、混合した結果で以前のソリューションを試しました。しかし、ビルド->クリーンソリューションに行くときはいつでも私にとってはうまくいくようです

しかし、それを毎回しなければならないのは面倒です。

1
user2813625

ツール->オプション->プロジェクトとソリューション。

  1. 「常に実行/プロジェクトは最新ではありません」のビルドを常にビルド/プロンプトとして設定
  2. 「スタートアッププロジェクトと実行時の依存関係のみをビルドする」のチェックボックスをオフにします。
1
Poovizhi

Resharperを使用している場合は、すべての設定をリセットするだけです

https://i.stack.imgur.com/VmuM1.png

0
farouk osama