Visual Studioのデバッグモードでファイル編集を有効にするにはどうすればよいですか?


144

Visual Studioでデバッグ中にファイル編集を有効にする方法はありますか?[ソースファイルが元のバージョンと完全に一致する必要がある]チェックボックスをオフにしました。違いはありません。ファイルを編集するにはデバッグを停止する必要があります。とてもうるさい。エディットコンティニューを有効にしました。同じ結果。エディットコンティニューを無効にした-同じ結果。


質問を編集したことはありませんでした。簡単な再インストールで修正できます。
Secko 14

12
@Secko Visual Studioについて話しているとき、「迅速な再インストール」などはありません...
Zero3

@ Zero3私が(int)1999-(int)2000の周りでそれを使用していた頃、約16年ほど前にありました。(長い)*時間にそれを使用していません。
Secko 2017

ここでの実際の問題は、Visual Studioの[編集して続行]設定では編集して続行できないことです。むしろ、これはコードを編集して、実際に実行中のコードを編集内容に合わせて変更し、そこからデバッグできる奇妙な機能です。それが役に立ったとしても、それはめったに機能しません。それは「オンザフライで編集して再コンパイル」のようなものと呼ばれるべきでした。これをオフにすると、コンパイルしたコードをデバッグしながら、実際にコードを編集できます。
MGOwen 2018年

回答:


234

私の知る限り、「編集して続行」チェックボックスをオフにすることができます。

ツール->オプション->デバッグ->編集と続行>編集と続行を有効にする(チェックを外す)


60
これが私にとっての解決策でした。「編集して続行」のチェックを外すと、なぜ編集できるようになるのかわかりません...直感に反するようです。とにかく、私はこれを答えとしてマークします。
サムシュッテ

7
直感に反し、しかも効果的。
ミルン2013年

2
ビジネスレイヤーがソリューション内の個別のプロジェクトに分割されている場合、これは異なる反応を示します。分割される前は、問題なくデバッグしながらクラスを編集できました。残念ながら、この状況ではこのソリューションは解決していません(VS2013を使用しています)
Radderz 14

18
Visual Studio 2015では、この設定はDebugging->の下部にありましたGeneral
Zero3 2016年

13
これを実行しようとしているが、「編集を続行して続行」がグレー表示されている場合は、デバッグを停止してオプションに戻ります。
Ravvy

19

リードの正解を拡大します。

デバッグモードでは、ファイルの編集でエディットコンティニュー(通常はENCと省略)と呼ばれる機能が使用されます。これにより、ユーザーはデバッガーで実行されているプログラムを変更できます。

ENCが有効になっている場合、ユーザーはファイルに対して限られた一連の編集を実行できます。プログラムの実行を継続する次のアクション(F10、F5など...)により、実行中のプログラムに編集が適用されます。これが成功した場合、プログラムの実行は新しいコードを適用して続行されます。

ENCが有効になっていない場合、デバッガーはファイルの編集を許可しません。

お使いのコンピューターでENCが無効になっている理由はいくつかあります

  • 特定のプロファイルはデフォルトではENCを有効にせず、明示的に有効にする必要があります
  • 64ビットOSで実行していて、.Netアプリを「すべてのCPU」に設定している可能性があります。 ENCは64ビットでは使用できません(CLRの制限)。ENCを機能させるには、アプリをx86に戻す必要があります

8
エディットコンティニューを気にせず、アプリの実行中にコーディングするだけで、実行中に何をする必要があるかを確認したい場合はどうでしょうか。VSがこの人為的な制限を課すことは絶対に非現実的です。実行中にソースファイルを読み取る必要があるわけではありません。ソースファイルをロックする必要がある技術的な理由はありません。Xcodeには、アプリの実行中にコードを作成させる問題はありません。変更は次の実行まで適用されません。VSでこれを行う方法は本当にありませんか?
devios1 2016年

1
エディットコンティニューを無効すると、アプリの実行中に.csファイルを編集できますが、それでも.xamlファイルはロックされます。この不条理なロックを完全に無効にする方法を探しています。
devios1 2016年

7
アプリの実行中にプロジェクトにファイルを追加することもできません!私はあなたをからかわない、私は何かをしようとし、VSはそれを完全に防ぎます。短い「wtf」の瞬間、アプリがデバッグ中であることに気づきました。私は自分のやっていることをやめ、アプリを強制終了してから再試行する必要があります。私はこれらの条件の下で働くことができず、人々がこれについて腕を組んでいないことに本当に驚いています。これは本当に私の生産性を殺し、私を壁に駆り立てています。これを修正する方法が必要です!
devios1 2016年

1
@ devios1私が頻繁に行うことは、デバッグなしで実行するだけです(ctrl + f5)。ブレークポイントなどが必要ない限り問題ありません。
binki 2018

@ devios1同じ。誰か(多分私)がこの拡張を完了する時間を見つけてくれることを願っています github.com/AndreasFurster/pause-edit-and-continue
ポール

8
  • UNは、「編集と続行を有効にする」にチェックを入れます(Tools -> Options -> Debugging -> Edit and Continue > Enable Edit and Continue
  • アプリを作成します。
  • それを実行します。
  • やめて
  • 「編集を続行して有効にする」を再度確認してください。
  • アプリを作成します。
  • それを実行します。
  • 今デバッグしながらファイルを編集してみてください。

これでうまくいきました。Visual Studio 2015でのバグまたは同期の問題の可能性があります。


1
親愛なるダウン投票者、回答をダウン投票する理由にコメントを残すのは良い習慣です。
Francois Botha 2017

これは私には解決しませんでしたが、以下の最高得点の回答は解決しました。
Kairan 2017年

6

エディットコンティニューを有効にする必要があります。


2
さらに、ブレークポイントにいるか、一時停止(すべて解除)ボタンをクリックする必要があります。
McAden、2009

@marcc:その他にも多くのことがあり、そのため私はドキュメントを指摘しました。サポートされていない変更の完全なリストについては、この場所には、「サポートされていないシナリオ」を参照してください。msdn.microsoft.com/en-us/library/ms164927%28VS.80%29.aspx
リードCopsey

4
Seckos(最高評価)の回答は私(VS2015)で機能し、回答の正反対です。
alrts 2017年

6

MSDNから

エディットコンティニューを有効/無効にするには

  • デバッグオプションページを開きます([ツール]、[オプション]、[デバッグ])。スクロール

  • [編集して続行]カテゴリに移動します。有効にするには、[編集を有効にする]を選択します

  • [続行]チェックボックス。無効にするには、チェックボックスをオフにします。注意。...

  • OKをクリックします。


5

通常、デバッグ中にファイルを編集できるのは、ブレークポイントに達したときだけです(そのときだけです)。

ただし、いくつかの制限があります。-新しいコードはコンパイルする必要があります-ラムダ式を含む関数のコードは変更できません



2

エディットコンティニュをオンにしていて、C#を使用している場合は、デバッガーがブレークポイントを介して停止したか、「Break All」を使用してアプリに手動で侵入した場合にのみ、ファイルを編集できます。それでも、一部のファイルを編集することはできません。WPFアプリのxamlファイルですが、ほとんどの問題を解決するはずです。


1

ソースが逆コンパイルされたdllに由来する場合、逆コンパイラはIgnoreSymbolStoreSequencePoints命令をassemblyinfo.csに追加する場合があることに注意してください。

[アセンブリ:Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]

この行を削除して、pdbファイルを読み込み、編集して作業を続ける必要があります。


1

下のオプションでティック削除するとうまくいきます

ツール>オプション>デバッグ>一般>編集を続行して有効化

ここに画像の説明を入力してください

*注:一部の開発者システムでは、このティックを追加することでトリックが実行されました。


1

私はこの方法を試してみました。CSProjまたはVbProjファイルに移動します-> Asp.Net開発サーバー/ IIS Expressを選択します->デバッガー->編集と続行を有効にします->保存して実行します。

ここに画像の説明を入力してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.