Visual Studio의 디버그 모드에서 파일 편집을 어떻게 활성화합니까?


144

Visual Studio에서 디버깅하는 동안 파일 편집을 활성화하는 방법이 있습니까? "원본 버전이 원본 버전과 정확히 일치해야합니다"확인란의 선택을 취소했습니다. 차이가 없습니다. 파일을 편집하려면 디버깅을 중지해야합니다. 매우 성가신. 편집 및 계속을 활성화했습니다. 같은 결과입니다. 편집 및 계속을 비활성화했습니다-동일한 결과.


질문을 편집 한 것을 보지 못했습니다. 빠른 재설치로 문제를 해결할 수 있습니다.
Secko

12
@Secko Visual Studio에 대해 이야기 할 때 "빠른 재설치"와 같은 것은 없습니다.
Zero3

@ Zero3 약 16 년 전쯤에 (int) 1999-(int) 2000 주위에서 그것을 사용했을 때가있었습니다. (긴) * 시간에 그것을 사용하지 않았습니다.
Secko

여기서 실제 문제는 Visual Studio의 '편집 및 계속'설정 으로 편집하고 계속할 수 없다는 것 입니다. 오히려 코드를 편집 할 수있는 이상한 기능이므로 실제로 실행 코드 를 편집 내용 에 맞게 변경 하고 디버깅합니다. 그것이 유용하더라도 거의 작동하지 않습니다. '즉석에서 편집 및 재 컴파일'과 같은 이름으로 불렸어야합니다. 이 스위칭 전원은 여전히 컴파일 된 코드를 디버깅하는 동안 당신이 실제로 코드를 편집 할 수 있습니다.
MGOwen

답변:


234

내가 아는 한 "편집 및 계속"체크 상자를 선택 해제 할 수 있습니다.

도구-> 옵션-> 디버깅-> 편집 및 계속> 편집 및 계속 활성화 (선택 취소)


60
이것이 나를위한 해결책이었습니다. 왜 "편집과 계속"을 체크하지 않는 것이 제가 직관적으로 편집 할 수 있는지 모르겠습니다. 어쨌든, 나는 이것을 대답으로 표시 할 것입니다.
Sam Schutte

7
반 직관적이지만 효과적입니다.
Milne

2
비즈니스 계층이 솔루션 내에서 별도의 프로젝트로 분할 된 경우 다르게 반응합니다. 분할되기 전에 문제없이 디버깅하는 동안 클래스를 편집 할 수있었습니다. 불행히도이 솔루션은이 상황에서 나를 위해 해결되지 않았습니다 (VS2013을 사용하고 있습니다)
Radderz

18
Visual Studio 2015에서는 Debugging-> 맨 아래 에서이 설정을 찾았습니다 General.
Zero3

13
이 작업을 수행하려고하지만 "편집 및 계속 활성화"가 회색으로 표시되면 디버깅을 중지하고 옵션으로 돌아갑니다.
Ravvy

19

리드의 정답을 확장합니다.

디버그 모드 편집시 파일은 편집 및 계속 (일반적으로 ENC)이라는 기능을 사용합니다. 이를 통해 사용자는 디버거에서 실행중인 프로그램을 변경할 수 있습니다.

ENC가 활성화되면 사용자는 파일에 대해 제한된 편집 세트를 수행 할 수 있습니다. 프로그램 실행을 계속하는 다음 동작 (F10, F5 등)은 실행중인 프로그램에 편집 내용이 적용되도록합니다. 이것이 성공하면 프로그램의 실행은 새로운 코드가 적용된 상태로 계속됩니다.

ENC가 활성화되어 있지 않으면 디버거에서 파일을 편집 할 수 없습니다.

컴퓨터에서 ENC가 비활성화 될 수있는 몇 가지 이유가 있습니다.

  • 특정 프로파일은 기본적으로 ENC를 활성화하지 않으며 명시 적으로 활성화해야합니다.
  • 64 비트 OS에서 실행 중이고 .Net 앱이 "Any CPU"로 설정되어있을 수 있습니다. ENC는 64 비트에서 사용할 수 없습니다 (CLR 제한). ENC가 작동하려면 앱을 다시 x86으로 설정해야합니다.

8
편집 및 계속에 신경 쓰지 않고 앱이 실행되는 동안 코드를 작성하여 수행하는 동안 수행해야 할 작업을 보려면 어떻게해야합니까? VS 가이 인공 제한을 부과하는 것은 절대적으로 비현실적입니다. 소스 파일이 실행되는 동안 읽을 필요는 없습니다. 소스 파일을 잠 가야하는 기술적 이유는 없습니다. Xcode는 앱이 실행되는 동안 코드를 작성하는 데 아무런 문제가 없습니다. 변경 사항은 다음 실행까지 적용되지 않습니다. VS에서 실제로 이것을 할 수있는 방법이 없습니까?
devios1

1
편집 및 계속을 사용하지 않으면 앱이 실행되는 동안 .cs 파일을 편집 할 수 있지만 여전히 .xaml 파일을 잠급니다. 이 터무니없는 잠금을 완전히 비활성화하는 방법을 찾고 있습니다.
devios1

7
앱이 실행되는 동안 프로젝트에 파일을 추가 할 수도 없습니다 ! 나는 너를 놀리지 않는다. 하루에 20-30 번 나는 무언가를하려고하고 VS는 그것을 완전히 막는다. 잠깐 동안 "wtf"순간이 지나면 앱이 디버깅 중임을 깨달았고 내가하던 일을 중단하고 앱을 종료 한 다음 다시 시도해야합니다. 나는 이러한 조건 하에서 일할 수 없으며 사람들이 이것에 대해 무기를 쓰고 있지 않은 것에 정말 놀랐습니다. 이것은 실제로 내 생산성을 떨어 뜨리고 벽을 몰고 가고 있습니다. 이 문제를 해결하는 방법이 있어야합니다!
devios1

1
@ devios1 내가 자주하는 것은 디버깅없이 실행되는 것입니다 (ctrl + f5). 중단 점이나 다른 것이 필요하지 않는 한 괜찮습니다.
binki

@ devios1 동일합니다. 누군가 (아마도)이 확장을 마치는 시간을 찾을 수 있기를 바랍니다. github.com/AndreasFurster/pause-edit-and-continue
Paul

8
  • UN "편집 사용 및 계속"체크 ( Tools -> Options -> Debugging -> Edit and Continue > Enable Edit and Continue)
  • 앱을 빌드하십시오.
  • 그것을 실행하십시오.
  • 멈춰.
  • "편집 및 계속 활성화"를 다시 확인하십시오.
  • 앱을 빌드하십시오.
  • 그것을 실행하십시오.
  • 지금 디버깅하는 동안 파일을 편집하십시오.

이것은 나를 위해 일했습니다. Visual Studio 2015의 버그 또는 동기화 문제 일 수 있습니다.


1
다운 보더 여러분, 왜 답을 내리는 지에 대한 의견을 남기는 것이 좋습니다.
Francois Botha

이것은 나를 위해 해결되지 않았지만 아래에서 가장 높은 투표 응답이 나왔습니다.
Kairan

6

편집 및 계속 을 활성화해야합니다 .


2
또한 중단 점에 있거나 일시 중지 (모두 브레이크) 단추를 클릭해야합니다.
McAden

@ marcc : 그리고 다른 많은 것들, 그래서 나는 문서를 지적했습니다. 지원되지 않는 변경 사항의 전체 목록은 다음 위치의 "지원되지 않는 시나리오"섹션을 참조하십시오. msdn.microsoft.com/en-us/library/ms164927%28VS.80%29.aspx
Reed Copsey

4
Seckos (최고 등급) 답변이 저에게 도움이되었으며 (VS2015) 귀하의 답변과 정반대입니다.
alrts

6

MSDN에서

편집 및 계속을 활성화 / 비활성화하려면

  • 디버깅 옵션 페이지를 엽니 다 (도구 / 옵션 / 디버깅). 스크롤

  • 아래로 편집 및 계속 카테고리로 이동하십시오. 사용하려면 편집 사용을 선택하십시오.

  • 계속 확인란을 선택하십시오. 비활성화하려면 확인란을 지 웁니다. 노트. ...

  • 확인을 클릭하십시오.


5

일반적으로 중단 점에 도달 한 경우에만 디버깅 중에 파일을 편집 할 수 있습니다.

몇 가지 제한 사항이 있습니다.-새 코드는 컴파일해야합니다.-람다식이 포함 된 함수에서 코드를 변경할 수 없습니다.



2

편집 및 계속이 켜져 있고 C #을 사용중인 경우 디버거가 중단 점을 통해 중지되었거나 "Break All"을 통해 수동으로 앱을 중단 한 경우에만 파일을 편집 할 수 있습니다. 여전히 일부 파일을 편집 할 수 없습니다 (예 : WPF 앱의 xaml 파일이지만 대부분의 문제를 해결해야합니다.


1

소스가 디 컴파일 된 dll에서 생성 된 경우 디 컴파일러는 assemblyinfo.cs에 IgnoreSymbolStoreSequencePoints 명령어를 추가 할 수 있습니다.

[조립 : Debuggable (DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]

pdb 파일을로드하여 편집 및 작업을 계속하려면이 행을 제거해야합니다.


1

아래 옵션 에서 진드기제거하면 나를 위해 일합니다.

도구> 옵션> 디버깅> 일반> 편집 및 계속 활성화

여기에 이미지 설명을 입력하십시오

* 참고 : 일부 동료 개발자 시스템에서이 틱을 추가하면 트릭이 수행됩니다.


1

나는이 방법과 그 일을 시도했다. CSProj 또는 VbProj 파일로 이동-> Asp.Net 개발 서버 / IIS Express 선택-> 디버거-> 편집 및 계속 활성화-> 저장 및 실행을 선택하십시오.

여기에 이미지 설명을 입력하십시오

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.