Visual Studio 편집하며 계속하기 Edit and Continue not working
Visual Studio 편집하며 계속하기 Edit and Continue not working
Visual Studio 에는 편집하며 계속하기 라는 옵션이 있다. 디버깅을 중지하지 않으면서 소스를 즉각 수정하고 그 결과를 바로 확인할 수 있는 기능이다.
대부분의 개발자들이 이 기능을 알고 있지만 특정 환경에서 편집하며 계속하기가 되지 않아, 디버깅을 중지하고 소스를 수정한 후 다시 디버깅을 하는 불편함을 겪곤 한다.
Visual Studio 편집하며 계속하기가 되지 않을 때 해결 방법을 소개해 본다.
방법 1. 편집하며 계속하기 옵션 설정(Options and Settings) 체크
메뉴의 디버그 - 옵션 및 설정 창을 연다. (Debug - Options and Settings)
왼쪽 트리메뉴에서 디버깅 - 편집하며 계속하기(Debug - Edit and Continue) 를 선택한 후, 우측 편집하며 계속하기 사용(Enable Edit and Continue)에 체크 한다.
방법 2. 프로젝트 빌드 플랫폼 대상을 x86으로 변경
64비트 응용 프로그램은 변경할 수 없습니다.
Changes to 64-bit applications are not allowed.
현재 64비트 에서는 편집하며 계속하기가 지원되지 않는다. 위와 같은 메시지가 뜬 경우, 프로젝트 빌드 플랫폼 대상을 x86으로 지정하면 된다.
해당 프로젝트의 속성창을 연다. 빌드 탭에서 플랫폼 대상을 x86으로 지정한다.
위 방법을 사용하는 경우 64bit OS에서 32bit 플랫폼으로 개발된 어셈플리를 사용하는 경우 BadImageFormatException이 발생한다. DLL로 가져다 사용할 경우 플랫폼 대상을 x64로 변경하거나 AnyCPU로 설정해서 재컴파일 하면 된다.
또는 Debug 모드에서 편집하며 계속하기가 되므로 Debug 모드는 x86, Release 모드는 AnyCPU로 플랫폼 대상을 설정해두면 된다.
방법 3. Microsoft.Office.Interop.Excel Interop 형식 포함 변경
This source file has changed. It no longer matches the version of the file used to build the application being degugged.
이 소스 파일은 변경되었으므로 디버깅 중인 응용 프로그램을 빌드하는 데 사용된 파일 버전과 더 이상 일치하지 않습니다.
Edits were made which cannot be compiled. Execution cannot continue until the compile errors are fixed.
편집 내용을 컴파일할 수 없습니다. 실행을 계속하려면 먼저 컴파일 오류를 수정해야 합니다.
방법1, 2가 모두 적용되었지만 소스를 수정하고 나면 위와 같은 메시지가 나타나는 경우가 있다.
이 때는 참조에 걸려있는 많은 DLL 중 Microsoft.Office.Interop.Excel 이 있다면 이 DLL의 속성을 확인해봐야 한다.
Microsoft.Office.Interop.Excel DLL 속성을 살펴보면 Interop 형식 포함이란 옵션이 있다. 영문 버전에서는 Embed Interop Types 부분이다.
이 부분이 기본 True로 되어 있는데, 이 것을 False로 바꿔주면 된다.
다만, 이 속성을 사용하는 코드가 소스내에 있다면 에러가 발생할 수 있다.
이 때는 편집하며 계속하기를 사용할 수 없다.
방법 4. 디버그 모드
Changes are not allowed in the following cases.
다음과 같은 경우에는 변경할 수 없습니다.
위와 같은 메시지가 나타나는 경우에는 디버그 모드가 아닌 릴리즈 모드로 컴파일 한 경우에 발생한다.
컴파일을 Debug 모드로 하면 편집하며 계속하기를 이용할 수 있다.
위 문제 외에도 여러 문제가 발생할 수 있다. 위 해결방법으로도 적용되지 않는다면 조금 더 구글링을 해봐야 할 것이다.
그 외에도 운영체제가 64비트인 경우 아래 링크의 내용을 적용하도록 한다.
2014/10/07 - [Note/Dev] - .NET C# 64bit 편집하며 계속하기 사용
댓글
이 글 공유하기
다른 글
-
이클립스(eclipse) 오류창 없이 실행되지 않는 문제 해결. 이클립스 로딩중 종료
이클립스(eclipse) 오류창 없이 실행되지 않는 문제 해결. 이클립스 로딩중 종료
2017.03.16 -
The product key is not valid. INS00140. 제품 키가 잘못되었습니다. Crystal reports 2013
The product key is not valid. INS00140. 제품 키가 잘못되었습니다. Crystal reports 2013
2016.08.29 -
Putty 한글 깨짐 해결방법
Putty 한글 깨짐 해결방법
2015.11.13 -
[C#] How to change toolstripbutton's backcolor property when click on it or checked?
[C#] How to change toolstripbutton's backcolor property when click on it or checked?
2015.03.23