Visual Studio에서 Python 코드 디버그
Visual Studio는 Python에 대한 포괄적인 디버깅 환경을 제공합니다. 이 문서에서는 실행 중인 프로세스에 디버거를 연결하고 조사식 및 즉시 창에서 식을 평가하는 방법을 살펴봅니다. 디버거에서 지역 변수를 검사하고, 중단점을 사용하고, 문을 단계별로 실행/해제하고, 다음 문설정하는 등의 작업을 수행할 수 있습니다.
시나리오별 디버깅 정보는 다음 문서를 참조하세요.
- linux 원격 디버깅
- 혼합 모드 Python/C++ 디버깅
- 혼합 모드 디버깅을 위한 기호
필수 구성 요소
Python 워크로드를 지원하는 Visual Studio가 설치되었습니다. 자세한 내용은 Visual Studio Python 설치 지원을참조하세요.
디버거와 함께 사용할 Python 코드입니다.
프로젝트를 사용하거나 사용하지 않고 코드 디버그
Python 환경 및 인수를 제어하려면 먼저 코드에 대한 프로젝트를 만듭니다. 기존 Python 코드 프로젝트 템플릿에서 사용하여 프로젝트를 만들 수 있습니다. 자세한 내용은 기존 Python 코드 파일프로젝트 만들기를 참조하세요.
그러나 Python 코드를 디버그하기 위해 Visual Studio에는 프로젝트 또는 솔루션 파일이 필요하지 않습니다. 독립 실행형 Python 파일에서 코드를 디버그하려면 Visual Studio에서 파일을 열고 디버그 >디버깅 시작선택합니다. Visual Studio는 전역 기본 환경에서 아무 인수 없이 스크립트를 시작합니다. 그런 다음 코드에 대한 전체 디버깅 지원을 받습니다. 자세한 내용은 Python 환경참조하세요.
기본 디버깅 살펴보기
기본 디버깅 워크플로에는 설정 중단점, 코드 단계별 실행, 값 검사 및 예외 처리가 포함됩니다. 디버그>디버깅 시작 을 선택하거나 F5 바로 가기 키를 사용하여 디버깅 세션을 시작할 수 있습니다. 프로젝트의 경우 이러한 작업은 프로젝트의 활성 환경과 프로젝트 속성지정된 명령줄 인수 또는 검색 경로를 사용하여 시작 파일 시작합니다. 속성을 구성하려면 프로젝트 디버깅 옵션 설정을 참조하세요.
프로젝트 시작 파일 설정
프로젝트의 시작 파일은 솔루션 탐색기굵게 표시됩니다. 시작 파일로 사용할 파일을 선택할 수 있습니다.
- 프로젝트 파일을 시작 파일로 지정하려면 파일을 마우스 오른쪽 단추로 클릭하고 시작 항목 설정을 선택합니다.
Visual Studio 2017 버전 15.6 이상에서는 지정된 시작 파일 집합이 없는 경우 경고가 표시됩니다. 이전 버전의 Visual Studio에서는 Python 인터프리터가 실행 중인 출력 창을 열거나 출력 창이 잠시 열리고 닫힙니다.
활성 환경 지정
프로젝트 파일을 사용하는 경우 디버거는 항상 프로젝트에 대한 활성 Python 환경으로 시작합니다. 현재 활성 환경을 변경할 수 있습니다. 자세한 내용은 프로젝트 Python 환경 선택참조하세요.
독립 실행형 Python 코드 파일을 디버깅하는 경우 Visual Studio는 전역 기본 환경과 인수 없이 스크립트를 시작합니다.
중단점 설정
중단점은 표시된 지점에서 코드 실행을 중지하므로 프로그램 상태를 검사할 수 있습니다.
Python의 일부 중단점은 다른 프로그래밍 언어로 작업한 개발자에게 놀라운 일이 될 수 있습니다. Python에서 전체 파일은 실행 코드이므로 Python은 최상위 클래스 또는 함수 정의를 처리하기 위해 로드될 때 파일을 실행합니다. 중단점이 설정된 경우 디버거가 클래스 선언을 부분적으로 중단하는 것을 발견할 수 있습니다. 이 동작은 때로는 놀라운 경우에도 정확합니다.
중단점을 설정하려면 코드 편집기의 왼쪽 여백에서 선택하거나 코드 줄을 마우스 오른쪽 단추로 클릭하고 중단점 >중단점삽입을 선택합니다. 설정된 중단점이 있는 각 줄에 빨간색 점이 나타납니다.
중단점을 제거하려면 빨간색 점을 선택하거나 코드 줄을 마우스 오른쪽 단추로 클릭하고 중단점 >중단점삭제를 선택합니다. 빨간 점을 선택한 후 옵션 중에서>'중단점 사용 안 함'을 선택하여 중단점을 비활성화할 수 있습니다.
조건 및 작업 설정
변수가 특정 값 또는 값 범위로 설정된 경우에만 중단점이 트리거되는 조건을 사용자 지정할 수 있습니다.
조건을 설정하려면 중단점의 빨간색 점을 마우스 오른쪽 단추로 클릭하고 조건 선택합니다. 중단점 설정 대화 상자가 열립니다.
대화 상자에서 Python 코드를 사용하여 여러 조건을 추가하고 조건식을 만들 수 있습니다. Visual Studio에서 이 기능에 대한 자세한 내용은 중단점 조건 참조하세요.
중단점에 대해 작업을 설정할 수 있는 옵션도 제공됩니다. 출력 창에 로그하는 메시지를 만들고 필요에 따라 자동으로 실행을 계속하도록 지정할 수 있습니다.
visual Studio에서 중단점에 대한 추적점 작업을 만드는 방법을 보여 주는
메시지를 로깅하면 애플리케이션에 직접 로깅 코드를 추가하지 않는 추적점 만들어집니다.
중단점에 대한 조건 및 작업을 구성하는 방법에 따라 왼쪽 여백의 빨간색 아이콘이 변경되어 설정을 나타냅니다. 점 모양, 시계 타이머 또는 다이아몬드가 표시될 수 있습니다.
코드 단계별 실행
Visual Studio가 중단점에서 코드 실행을 중지하는 경우 코드를 단계별로 실행하거나 코드 블록을 실행하는 데 사용할 수 있는 몇 가지 명령이 있습니다. 이 명령은 Visual Studio에서 디버거 도구 모음, 디버그 메뉴, 코드 편집기의 우클릭 컨텍스트 메뉴 및 키보드 바로 가기를 통해 제공됩니다.
다음 표에서는 이러한 명령을 요약하고 바로 가기 키를 제공합니다.
명령 | 지름길 | 묘사 |
---|---|---|
중지 | Shift + F5 | 디버깅 세션을 중지합니다. |
다시 시작 | Ctrl + Shift + F5 | 현재 디버깅 세션을 다시 시작합니다. |
계속 | F5 | 다음 중단점에 도달할 때까지 코드를 실행합니다. |
한 단계씩 | F11 | 다음 문을 실행하고 중지합니다. 다음 문이 함수에 대한 호출인 경우 디버거는 호출된 함수의 첫 번째 줄에서 중지됩니다. |
단계 건너뛰기 | F10 | 함수 호출(모든 코드 실행) 및 반환 값 적용을 포함하여 다음 문을 실행합니다. 이 명령을 사용하면 디버그할 필요가 없는 함수를 쉽게 건너뛸 수 있습니다. |
나가기 | Shift+F11 | 현재 함수가 끝날 때까지 코드를 실행한 다음 호출 문으로 단계별로 실행합니다. 이 명령은 현재 함수의 나머지 부분을 디버그할 필요가 없는 경우에 유용합니다. |
커서로 실행 | Ctrl+F10 | 편집기에서 캐럿 위치까지 코드를 실행합니다. 이 명령을 사용하면 디버그할 필요가 없는 코드 세그먼트를 쉽게 건너뛸 수 있습니다. |
다음 구문 설정 | Ctrl+Shift+F10 | 코드의 현재 실행 지점을 caret의 위치로 변경합니다. 이 명령을 사용하면 코드에 오류가 있거나 원치 않는 부작용이 발생하는 경우와 같이 코드 세그먼트가 전혀 실행되지 않도록 생략할 수 있습니다. |
다음 명령문 표시 | Alt+Num+\ | 코드 실행을 계속하기 위해 다음 문으로 돌아갑니다. 이 명령을 사용하면 코드에서 디버거가 중지된 위치를 찾을 수 있습니다. |
값 검사 및 수정
디버거에서 코드 실행을 중지하면 변수 값을 검사하고 수정할 수 있습니다. 조사 창을 사용하여 개별 변수 및 사용자 지정 식을 모니터링할 수도 있습니다. 자세한 내용은 변수를 검사참조하세요.
디버깅하는 동안 DataTips 기능을 사용하여 값을 보려면 편집기에서 변수를 마우스로 가져가면 됩니다. 변수 값을 선택하여 변경할 수 있습니다.
Autos 창을 사용하려면 디버그>윈도우>Autos을 선택합니다. 이 창에는 현재 문에 가까운 변수와 식이 포함되어 있습니다. 값 열을 두 번 클릭하거나 F2 선택하고 입력하여 값을 편집할 수 있습니다.
자동 창 사용에 대한 자세한 내용은 자동 및 지역 창변수 검사를 참조하세요.
로컬 창을 사용하려면 디버그>Windows>로컬선택합니다. 이 창에는 현재 범위에 있는 모든 변수가 표시되며 다시 편집할 수 있습니다.
Visual Studio 디버거의 로컬 창을 보여 주는
Locals 창 사용에 대한 자세한 내용은 자동 및 지역 창변수 검사를 참조하세요.
Watch 창을 사용하려면 디버그>Windows>Watch>Watch 1-4을 선택합니다. 이 옵션을 사용하면 임의의 Python 식을 입력하고 결과를 볼 수 있습니다. 식은 각 단계에 대해 다시 평가됩니다.
Watch 창 사용에 대한 자세한 내용은 Watch 및 QuickWatch 창을 사용하여 변수 관찰하기를 참조하세요.
문자열 값을 검사하려면 값 항목의 오른쪽에 있는 보기(돋보기)를 선택합니다.
str
,unicode
,bytes
및bytearray
유형은 모두 검사에 사용할 수 있습니다.보기 드롭다운 메뉴에는 텍스트, HTML, XML 또는 JSON의 네 가지 시각화 옵션이 표시됩니다.
Visual Studio 디버거의 보기 돋보기에서 시각화 도우미에 액세스하는 방법을 보여 주는
시각화를 선택한 후 팝업 대화 상자에 선택한 형식에 따라 따옴 지정되지 않은 문자열 값이 표시됩니다. 줄 바꿈 및 스크롤, 구문 강조 표시 및 트리 뷰를 사용하여 문자열을 볼 수 있습니다. 이러한 시각화는 길고 복잡한 문자열의 문제를 디버그하는 데 도움이 될 수 있습니다.
예외 보기
디버깅하는 동안 프로그램에서 오류가 발생하지만 예외 처리기가 없는 경우 디버거는 예외 지점에서 중단됩니다.
오류가 발생하면 호출 스택을 포함하여 현재 프로그램 상태를 검사할 수 있습니다. 그러나 코드를 단계별로 실행하면 디버깅 프로세스가 예외를 처리하거나 프로그램이 종료될 때까지 예외가 계속 발생합니다.
확장된 예외 보기를 보려면 디버그>Windows>예외 설정을 선택합니다.
Visual Studio 디버거의 예외 설정 창을 보여 주는
예외 설정 창에서 예외 다음에 있는 확인란은 해당 예외가 발생할 때 디버거가 항상 중단될 여부를 제어합니다.
특정 예외에 대해 더 자주 중단하려면 예외 설정 창에서 예외 옆에 있는 확인란을 선택합니다.
기본적으로 대부분의 예외는 소스 코드에서 예외 처리기를 찾을 수 없을 때 중단됩니다. 이 동작을 변경하려면 예외를 마우스 오른쪽 단추로 클릭하고 사용자 코드 옵션에서 처리되지 않은 경우 계속을 수정합니다. 예외에 대해 덜 자주 중단하려면 이 옵션을 선택 취소하세요.
예외 설정 창에 표시되지 않는 예외를 구성하려면 추가(기호 추가)를 선택합니다. 예외를 감시할 이름을 입력하십시오. 이름은 예외의 전체 이름과 일치해야 합니다.
프로젝트 디버깅 옵션 구성
기본적으로 디버거는 표준 Python 시작 관리자를 사용하여, 명령줄 인수나 특별한 경로 또는 조건 없이 프로그램을 시작합니다. 디버그 속성을 설정하여 Python 프로젝트에 대한 시작 옵션을 구성할 수 있습니다.
프로젝트의 디버그 속성에 액세스하려면 솔루션 탐색기Python 프로젝트를 마우스 오른쪽 단추로 클릭하고 속성선택한 다음 디버그 탭을 선택합니다.
다음 섹션에서는 특정 속성에 대해 설명합니다.
시작 동작 정의
다음 표에서는 시작 모드 속성에 사용할 수 있는 값을 나열합니다. 이 속성을 사용하여 디버거의 시작 동작을 정의합니다.
값 | 묘사 |
---|---|
표준 Python 시작 관리자 | CPython, IronPython 및 Stackless Python과 같은 변형과 호환되는 이식 가능한 Python으로 작성된 디버깅 코드를 사용합니다. 이 옵션은 순수 Python 코드를 디버깅하는 데 가장 적합한 환경을 제공합니다. 실행 중인 python.exe 프로세스에 연결하면 이 속성에 지정된 시작 관리자가 사용됩니다. 또한 이 시작 관리자에서는 CPython에 대한 혼합 모드 디버깅 제공하므로 C/C++ 코드와 Python 코드 간에 원활하게 단계를 수행할 수 있습니다. |
웹 시작 관리자 | 시작 시 기본 브라우저를 시작하고 템플릿 디버깅을 사용하도록 설정합니다. 자세한 내용은 웹 템플릿 디버깅 섹션을 참조하세요. |
django 웹 시작 관리자 | django 환경에서 웹 시작 관리자 속성과 동일한 동작을 구현합니다. 이전 버전과의 호환성을 위해서만 이 옵션을 사용합니다. |
IronPython(.NET) 시작 관리자 | .NET 디버거를 사용합니다. 이 디버거는 IronPython에서만 작동하지만 C# 및 Visual Basic을 비롯한 모든 .NET 언어 프로젝트를 단계별로 실행하도록 허용합니다. IronPython을 호스트하는 실행 중인 .NET 프로세스에 연결하는 경우 이 시작 관리자가 사용됩니다. |
실행 동작 정의
다음 표에서는 디버거에 대한 실행 동작을 구성하도록 설정할 수 있는 속성에 대해 설명합니다.
재산 | 묘사 |
---|---|
검색 경로 | Visual Studio에서 프로젝트에 사용하는 파일 및 폴더 검색 경로를 지정합니다. 이러한 값은 솔루션 탐색기프로젝트의 검색 경로 노드에 표시된 항목과 일치합니다. 이 대화 상자에서 검색 경로를 지정할 수 있지만 솔루션 탐색기사용하여 폴더를 찾아보고 경로를 상대 양식으로 자동으로 변환할 수 있습니다. |
스크립트 인수 | Visual Studio에서 스크립트를 시작하는 데 사용하는 명령에 추가할 인수를 정의하고 스크립트의 파일 이름 뒤를 표시합니다. 값에 나열된 첫 번째 항목은 스크립트에서 sys.argv[1] , 두 번째 항목은 sys.argv[2] 등으로 사용할 수 있습니다. |
인터프리터 인수 | 스크립트 이름 앞에 시작 관리자 명령줄에 추가할 인수를 나열합니다. 일반적인 인수로는 경고를 제어하는 -W ... , 프로그램을 약간 최적화하는 -O , 버퍼링되지 않은 IO를 사용하는 -u 가 있습니다. IronPython 사용자는 이 필드를 사용하여 -X:Frames 또는 -X:MTA 같은 -X 옵션을 전달할 수 있습니다. |
인터프리터 경로 | 현재 환경과 연결된 경로를 재정의할 인터프리터 경로를 식별합니다. 이 값은 비표준 인터프리터를 사용하여 스크립트를 시작하는 데 유용할 수 있습니다. |
환경 변수 | 이 속성을 사용 하 여 폼 <NAME>=\<VALUE> 항목을 추가 합니다. Visual Studio는 기존 전역 환경 변수 위에 이 속성 값을 마지막으로 적용하고 PYTHONPATH 검색 경로 설정에 따라 설정된 후에 적용합니다. 따라서 이 설정을 사용하여 다른 변수를 수동으로 재정의할 수 있습니다. |
대화형 창 작업
디버깅 세션 중에 사용할 수 있는 대화형 창에는 표준 Visual Studio 직접 실행 창과 Python 디버그 대화형 창이 있습니다.
직접 실행 창 열기
표준 Visual Studio 직접 실행 창을 사용하여 Python 식을 신속하게 평가하고 실행 중인 프로그램에서 변수를 검사하거나 할당할 수 있습니다. 자세한 내용은 직접 실행 창참조하세요.
- 즉시 창을 열려면 디버그>윈도우>즉시선택합니다. Ctrl+Alt+I를 사용하는 바로 가기 키를 사용할 수도 있습니다.
대화형 디버그 창 열기
Python 디버그 대화형 창은 코드 작성 및 실행을 포함하여 디버깅하는 동안 사용할 수 있는 전체 대화형 REPL 환경을 갖춘 풍부한 환경을 제공합니다. 이 창은 표준 Python 시작 관리자를 사용하여 디버거에서 시작된 모든 프로세스에 자동으로 연결되며, 디버그>프로세스에 연결를 통해 연결된 프로세스도 포함됩니다. 그러나 혼합 모드 C/C++ 디버깅을 사용하는 경우에는 이 창을 사용할 수 없습니다.
디버그 대화형 창을 사용하려면 디버그>Windows>Python 디버그 대화형(Shift+Alt+I)을 선택합니다.
디버그 대화형 창은 다음 표에 설명된 대로 표준 REPL 명령외에도 특수 메타 명령을 지원합니다.
명령 | 묘사 |
---|---|
$continue , $cont , $c |
현재 문에서 프로그램 실행을 시작합니다. |
$down , $d |
스택 추적에서 현재 프레임을 한 수준 아래로 이동합니다. |
$frame |
현재 프레임 ID를 표시합니다. |
$frame |
현재 프레임을 지정된 프레임 ID로 전환합니다. - <프레임 ID> 인수가 필요합니다. |
$load |
파일에서 명령을 로드하고 완료될 때까지 실행됩니다. |
$proc |
현재 프로세스 ID를 표시합니다. |
$proc |
현재 프로세스를 지정된 프로세스 ID로 전환합니다. - <프로세스 ID> 인수가 필요합니다. |
$procs |
현재 디버그 중인 프로세스를 나열합니다. |
$stepin , $step , $s |
가능하면 다음 함수 호출을 한 단계씩 실행합니다. |
$stepout , $return , $r |
현재 함수에서 벗어납니다. |
$stepover , $until , $unt |
다음 함수 호출을 단계별로 실행합니다. |
$thread |
현재 스레드 ID를 표시합니다. |
$thread |
현재 스레드를 지정된 스레드 ID로 전환합니다. - <스레드 ID> 인수가 필요합니다. |
$threads |
현재 디버그 중인 스레드를 나열합니다. |
$up , $u |
스택 추적에서 현재 프레임을 한 수준 위로 이동합니다. |
$where , $w , $bt |
현재 스레드의 프레임을 나열합니다. |
프로세스, 스레드및 호출 스택 같은 표준 디버거 창은 디버그 대화형 창과 동기화되지 않습니다. 디버그 대화형 창에서 활성 프로세스, 스레드 또는 프레임을 변경하는 경우 다른 디버거 창은 영향을 받지 않습니다. 다른 디버거 창에서 활성 프로세스, 스레드 또는 프레임을 변경해도 디버그 대화형 창에는 영향을 주지 않습니다.
레거시 디버거 사용
환경 구성에 따라 레거시 디버거를 사용해야 할 수 있습니다.
- Python 2.6, 3.1~3.4 또는 IronPython을 사용한 Visual Studio 2017 버전 15.7 이하
- Python 2.6, 3.1~3.4 또는 IronPython을 사용한 Visual Studio 2019 버전 16.5 이상
- ptvsd 3.x 및 초기 4.x 버전
레거시 디버거는 Visual Studio 2017 버전 15.7 이하의 기본값입니다.
- 레거시 디버거를 사용하려면 도구>옵션선택하고, Python>디버깅 옵션을 확장하고, 레거시 디버거 사용 옵션을 선택합니다.
이전 Visual Studio 또는 Python 버전 지원
Visual Studio 2017 버전 15.8 이상에서는 ptvsd 버전 4.1 이상을 기반으로 하는 디버거를 사용합니다. Visual Studio 2019 버전 16.5 이상에서는 debugpy를 기반으로 디버거를 사용합니다. 이러한 두 버전의 디버거는 Python 2.7 또는 Python 3.5 이상과 호환됩니다.
이러한 버전의 Visual Studio 중 하나를 실행하지만 Python 2.6, 3.1~ 3.4 또는 IronPython을 사용하는 경우 Visual Studio에서 오류를 표시합니다. 디버거는 이 Python 환경지원하지 않습니다.
Visual Studio에서 이 환경 오류를 보고하는 경우 레거시 디버거를 사용해야 합니다.
이전 ptvsd 버전 지원
현재 환경에서 이전 버전의 ptvsd(예: 이전 4.0.x 버전 또는 원격 디버깅에 필요한 3.x 버전)를 사용하는 경우 Visual Studio에 오류 또는 경고가 표시될 수 있습니다.
사용자 환경에서 ptvsd 3.x를 사용하는 경우 Visual Studio에서 오류를 표시합니다. 디버거 패키지를로드할 수 없습니다.
디버거 패키지가 오래된 경고는 이전 4.x 버전의 ptvsd를 사용할 때 표시됩니다.
Visual Studio에서 이러한 환경 오류를 보고하는 경우 레거시 디버거를 사용해야 합니다.
중요하다
일부 버전의 ptvsd에 대한 경고를 무시하도록 선택할 수 있지만 Visual Studio가 제대로 작동하지 않을 수 있습니다.
ptvsd 설치 관리
ptvsd 설치를 관리하려면 다음 단계를 수행합니다.
Python 환경 창에서 패키지 탭으로 이동합니다.
검색 상자에 ptvsd 입력하고 설치된 ptvsd 버전을 검사합니다.
버전이 4.1.1a9(Visual Studio와 함께 번들로 제공되는 버전)보다 낮은 경우 패키지 오른쪽에 있는 X 선택하여 이전 버전을 제거합니다. 그런 다음, Visual Studio는 번들된 버전을 사용합니다. (
pip uninstall ptvsd
명령을 사용하여 PowerShell에서 제거할 수도 있습니다.)또는 디버그 시나리오 문제 해결 섹션의 지침에 따라 ptvsd 패키지를 최신 버전으로 업데이트할 수 있습니다.
디버그 시나리오 문제 해결
다음 시나리오에서는 디버깅 구성에 대한 다른 문제 해결 옵션을 설명합니다.
Visual Studio 2019용 ptvsd 업그레이드
Visual Studio 2019 버전 16.4 이하에서 디버거에 문제가 있는 경우 먼저 다음과 같이 디버거 버전을 업그레이드합니다.
Python 환경 창에서 패키지 탭으로 이동합니다.
검색 상자에 ptvsd --upgrade 입력한 다음, 실행 명령을 선택합니다. pip install ptvsd --upgrade. (PowerShell에서 동일한 명령을 사용할 수도 있습니다.)
문제가 지속되면 PTVS GitHub 리포지토리문제를 제출합니다.
메모
Visual Studio 2019 버전 16.5 이상의 경우 debugpy는 Visual Studio Python 워크로드의 일부이며 Visual Studio와 함께 업데이트됩니다.
디버거 로깅 활성화
디버거 문제를 조사하는 과정에서 Microsoft는 진단에 도움이 되는 디버거 로그를 사용하도록 설정하고 수집하도록 요청할 수 있습니다.
다음 단계에서는 현재 Visual Studio 세션에서 디버깅을 사용하도록 설정합니다.
보기>기타 창>명령 창을 선택하여 Visual Studio에서 명령 창을 엽니다.
다음 명령을 입력합니다.
DebugAdapterHost.Logging /On /OutputWindow
디버깅을 시작하고 문제를 재현하는 데 필요한 단계를 진행합니다. 이 시간 동안 디버그 로그는 출력 창의 디버그 어댑터 호스트 로그표시됩니다. 그런 다음 해당 창에서 로그를 복사하여 GitHub 문제, 전자 메일 등에 붙여넣을 수 있습니다.
Visual Studio가 응답하지 않거나 출력 창에 액세스할 수 없는 경우 Visual Studio를 다시 시작하고 명령 창을 열고 다음 명령을 입력합니다.
DebugAdapterHost.Logging /On
디버깅을 시작하고 문제를 다시 재현합니다. 디버거 로그는
%temp%\DebugAdapterHostLog.txt
에 위치해 있습니다.
관련 콘텐츠
- Visual Studio 디버깅
- 혼합 모드 Python/C++ 디버깅
- 혼합 모드 디버깅을 위한 기호