web-dev-qa-db-ja.com

Microsoft Visual Studio 2012はC#ファイルにブレークポイントを設定できません

Microsoft Visual Studio Professional 2012、バージョン11.0.60610.01 Update 3がインストールされています。

C#(.cs)ファイルをデバッグするときに、ブレークポイントを設定しようとすると、Visual Studioから次のメッセージが表示されます。

「この場所にブレークポイントを挿入できませんでした」。

メソッド内の行に設定しようとしても、このメッセージが表示されます。しかし、Visual Basicアプリの.vbファイルでは、ブレークポイントを設定できます。

これを解決するための提案があるか、visual studioを再インストールする必要があるのか​​と思います。

ありがとう

18
user1408767

ようやく解決策を見つけることができました。コントロールパネルの[プログラムと機能]からVisual Studio 2012インスタンスを修復し、Microsoft Visual Studio Professional 2012を右クリックして[変更]を選択する必要がありました。 Visual Studioウィンドウで、[修復]を選択しました。

修復プロセスの一環として、次の場所にあるWeb展開もダウンロードする必要がありました: http://www.Microsoft.com/en-us/download/details.aspx?id=4148 Web配置パッケージが見つからず、インターネットからダウンロードできないと.msiファイルが.msiファイルに修正されました。

また、次のstackoverflow質問に示されている修正を実装する必要がありました: Visual Studio 2012のプレーンC#エディター(インテリセンスなし、インデントなし、コードハイライトなし)

これで、期待どおりにアプリケーションをデバッグできます。

4
user1408767

たぶん、この質問には遅すぎるかもしれませんが、ここではとにかく、

  1. ビルド>クリーンソリューション
  2. BUILD>ビルドソリューション
16
Kup

同様の問題が発生したため、Visual Studioを終了し、ソリューションフォルダーから.suoファイルを削除して解決しました。

このファイルは、プロジェクトを再度開いたときに再作成され、削除しても問題はありません。

.suoは、ソリューションのレイアウト、設定したブレークポイント、開いていたタブなどを格納するために使用されます。なぜこれが機能したのかはわかりませんが、私の論理では、Visual Studioが実際に配置する場所とは異なる場所にブレークポイントを配置しようとしていると考えていました。

7
Amicable

まあ、shesh ...私と同じくらい馬鹿な人のために、ここで考慮すべきもう一つのことです:

メソッドの開始時または終了時に中括弧にブレークポイントを置くことができ、何かを実行している(たとえば、値の割り当てやメソッドの呼び出し)行にブレークポイントを置くことができます。ただし、変数を宣言しているだけの行や、「何もしない」行にブレークポイントを設定することはできません。

例えば。私は方法を持っていました:

public IEnumerable<SomeObject> GetList()
{
    int distance;
    var otherVar = SomeValue;
}

int distance;を使用して最初の行にブレークポイントを配置しようとしましたが、これは他のIDEでは正常に機能しますが、VSでは機能しません。ブレークポイントを設定するために、中括弧まで移動するか、割り当てのある次の行に移動する必要がありました。

問題のない;-pをデバッグしようとして、人生の5分が無駄になりました。

3
Kevin Nelson

VS 2017私はこれを持っていました、私はがありませんでした。 forループ内

1
R2D2

行で実行する命令がない場合、VSは理由を示さないブレークポイントの設定を拒否します。例えば

string str; //Cannot set breakpoint
string str = ""; //Can set breakpoint
0
Alan