Visual Studio 디버거를 로컬 또는 원격 컴퓨터의 실행 중인 프로세스에 연결할 수 있습니다. 프로세스가 실행되면프로세스에 연결>를 선택하거나 Visual Studio에서 Ctrl+Alt+p를 누르고 프로세스에 연결 대화 상자를 사용하여 디버거를 프로세스에 연결합니다.
프로세스에 연결을 사용하여 로컬 또는 원격 컴퓨터에서 실행 중인 앱을 디버그하거나, 여러 프로세스를 동시에 디버그하거나, Visual Studio에서 생성되지 않은 앱을 디버그하거나, 디버거가 연결된 상태에서 Visual Studio에서 시작하지 않은 앱을 디버그할 수 있습니다. 예를 들어 디버거 없이 앱을 실행하고 예외를 발생시키는 경우 앱을 실행하는 프로세스에 디버거를 연결하고 디버깅을 시작할 수 있습니다.
팁 (조언)
디버깅 시나리오에 프로세스에 연결 사용 여부를 잘 모르겠습니까? 일반적인 디버깅 시나리오를 참조하세요.
로컬 컴퓨터에서 실행 중인 프로세스에 연결
이전에 연결한 프로세스에 빠르게 다시 연결하려면 프로세스에 다시 연결하세요.
Visual Studio 2022 버전 17.10 미리 보기 2부터 프로세스에 연결 대화 상자가 변경되었습니다. 이전 대화 상자와 일치하는 지침이 필요한 경우 Visual Studio 2019 보기(문서의 왼쪽 위 버전 선택기)로 전환합니다.
로컬 컴퓨터의 프로세스에 연결하려면 다음을 수행합니다.
Visual Studio에서프로세스에 연결>를 선택하거나 Ctrl+Alt+P를 눌러 프로세스에 연결 대화 상자를 엽니다.
연결 유형을로컬로 설정합니다.
대부분의 로컬 디버깅 시나리오에서는 로컬을 사용할 수 있습니다. 일부 시나리오에는 다른 연결 형식이 필요할 수 있습니다. 자세한 내용은 이 문서의 다른 섹션 또는 일반적인 디버깅 시나리오를 참조하세요.
사용 가능한 프로세스 목록에서 연결하려는 프로세스 또는 프로세스를 찾아 선택합니다.
- 프로세스를 빠르게 선택하려면 프로세스 필터링 상자에 해당 이름 또는 첫 글자를 입력합니다.
- 프로세스 이름을 모르는 경우 목록을 탐색하거나 일반적인 프로세스 이름에 대한 일반적인 디버깅 시나리오를 참조하세요.
- 컴퓨터에서 창을 선택할 수 있도록 설정하려면 [창 추적 ] 단추를 사용하여 프로세스를 설정합니다.
팁 (조언)
프로세스에 연결 대화 상자가 열려 있는 동안 백그라운드에서 프로세스를 시작하고 중지할 수 있으므로 실행 중인 프로세스 목록이 항상 최신 상태가 아닐 수 있습니다. 언제든지 새로 고침 을 선택하여 현재 목록을 볼 수 있습니다.
코드 형식 필드에서 디버그하려는 코드 형식이 나열되어 있는지 확인합니다.
기본 자동 설정은 대부분의 앱 형식에서 작동하지만 특정 코드 형식을 선택하여 디버거 유형을 수동으로 지정할 수 있습니다.
첨부를 선택합니다.
팁 (조언)
동일한 프로세스가 여러 개 있는 시나리오에서는 타이틀 열의 명령줄 열 또는 w3wp 프로세스 세부 정보를 사용하여 올바른 프로세스를 식별합니다.
Visual Studio에서프로세스에 연결>를 선택하거나 Ctrl+Alt+P를 눌러 프로세스에 연결 대화 상자를 엽니다.
연결 유형을 확인합니다.
대부분의 시나리오에서는 기본값을 사용할 수 있습니다. 일부 시나리오에는 다른 연결 형식이 필요할 수 있습니다. 자세한 내용은 이 문서의 다른 섹션 또는 일반적인 디버깅 시나리오를 참조하세요.
연결 대상을 로컬 컴퓨터 이름으로 설정합니다.
사용 가능한 프로세스 목록에서 연결하려는 프로세스 또는 프로세스를 찾아 선택합니다.
프로세스를 빠르게 선택하려면 프로세스 필터링 상자에 해당 이름 또는 첫 글자를 입력합니다.
프로세스 이름을 모르는 경우 목록을 탐색하거나 일반적인 프로세스 이름에 대한 일반적인 디버깅 시나리오를 참조하세요.
팁 (조언)
프로세스에 연결 대화 상자가 열려 있는 동안 백그라운드에서 프로세스를 시작하고 중지할 수 있으므로 실행 중인 프로세스 목록이 항상 최신 상태가 아닐 수 있습니다. 언제든지 새로 고침 을 선택하여 현재 목록을 볼 수 있습니다.
연결할 대상 필드에 디버그하려는 코드 형식이 나열되어 있는지 확인하십시오. 기본 자동 설정은 대부분의 앱 유형에서 작동합니다.
기본 연결 형식을 사용하는 경우 연결하려는 코드 유형을 수동으로 선택할 수 있습니다. 그렇지 않으면 선택 옵션을 사용하지 않도록 설정할 수 있습니다.
코드 형식을 수동으로 선택하려면 다음을 수행합니다.
첨부를 선택합니다.
비고
디버깅을 위해 여러 앱에 연결할 수 있지만 한 번에 하나의 앱만 디버거에서 활성화됩니다. Visual Studio 디버그 위치 도구 모음 또는 프로세스 창에서 활성 앱을 설정할 수 있습니다.
원격 컴퓨터의 프로세스에 연결
프로세스에 연결 대화 상자에서 원격 컴퓨터를 선택하고, 해당 컴퓨터에서 실행 중인 사용 가능한 프로세스 목록을 보고, 디버깅을 위해 하나 이상의 프로세스에 연결할 수도 있습니다. 원격 디버거(msvsmon.exe)가 원격 컴퓨터에서 실행되고 있어야 합니다. 자세한 내용은 원격 디버깅을 참조하세요.
Visual Studio 2022 버전 17.10 미리 보기 2부터 프로세스에 연결 대화 상자가 변경되었습니다. 이전 대화 상자와 일치하는 지침이 필요한 경우 Visual Studio 2019 보기(문서의 왼쪽 위 버전 선택기)로 전환합니다.
원격 컴퓨터에서 실행 중인 프로세스에 연결하려면 다음을 수행합니다.
Visual Studio에서프로세스에 연결>를 선택하거나 Ctrl+Alt+P를 눌러 프로세스에 연결 대화 상자를 엽니다.
연결 유형을원격(Windows)과 같은 원격 연결 형식으로 설정합니다.
Windows에서 원격 디버깅을 위한 대부분의 시나리오에서는 원격(Windows)을 사용할 수 있습니다. Linux 또는 컨테이너화된 앱 디버깅과 같은 일부 시나리오에는 다른 연결 유형이 필요합니다. 자세한 내용은 이 문서의 다른 섹션 또는 일반적인 디버깅 시나리오를 참조하세요.
연결 대상 옵션이 나타납니다.
연결 대상 상자에서 다음 방법 중 하나를 사용하여 원격 컴퓨터를 선택합니다.
- 연결 대상 옆에 있는 드롭다운 목록 화살표를 선택하고 드롭다운 목록에서 컴퓨터 이름을 선택합니다.
- 연결 대상 상자에 컴퓨터 이름을 입력하고 Enter 키를 누릅니다.
- 연결 대상 상자 옆에 있는 찾기 단추를 선택하여 원격 연결 대화 상자를 엽니다. 원격 연결 대화 상자에는 로컬 서브넷에 있거나 컴퓨터에 직접 연결된 모든 디바이스가 나열됩니다. 원격 디바이스를 검색하려면 서버 에서 아웃바운드 UDP 포트 3702를 열어 야 할 수 있습니다. 원하는 컴퓨터 또는 디바이스를 선택한 다음 대화 상자를 닫습니다.
Visual Studio가 컴퓨터 이름에 필요한 포트를 추가하는지 확인합니다. 이 포트는 원격 컴퓨터 이름<:p ort 형식>으로 표시됩니다.
비고
원격 컴퓨터 이름을 사용하여 연결할 수 없는 경우 IP 및 포트 주소(예
123.45.678.9:4026: )를 사용해 보세요. 4026은 Visual Studio 2022 원격 디버거의 기본 포트입니다. 다른 원격 디버거 포트 할당은 원격 디버거 포트 할당을 참조하세요.연결 형식 설정은 디버깅 세션 간에 유지됩니다. 연결 대상 설정은 해당 대상과 성공적으로 디버깅 연결이 발생한 경우에만 디버깅 세션 간에 유지됩니다.
새로 고침을 클릭하여 사용 가능한 프로세스 목록을 채웁다.
팁 (조언)
프로세스에 연결 대화 상자가 열려 있는 동안 백그라운드에서 프로세스를 시작하고 중지할 수 있으므로 실행 중인 프로세스 목록이 항상 최신 상태가 아닐 수 있습니다. 언제든지 새로 고침 을 선택하여 현재 목록을 볼 수 있습니다.
사용 가능한 프로세스 목록에서 연결하려는 프로세스 또는 프로세스를 찾아 선택합니다.
프로세스를 빠르게 선택하려면 프로세스 검색 상자에 해당 이름 또는 첫 글자를 입력합니다.
프로세스 이름을 모르는 경우 목록을 탐색하거나 일반적인 프로세스 이름에 대한 일반적인 디버깅 시나리오를 참조하세요.
모든 사용자 계정에서 실행되는 프로세스를 찾으려면 모든 사용자의 프로세스 표시 확인란을 선택합니다.
비고
신뢰할 수 없는 사용자 계정이 소유한 프로세스에 연결하려고 하면 보안 경고 대화 상자 확인이 표시됩니다. 자세한 내용은 보안 경고를 참조하세요. 신뢰할 수 없는 사용자가 소유한 프로세스에 연결하는 것은 위험할 수 있습니다. 다음 정보가 의심스럽거나 확실하지 않은 경우 이 프로세스에 연결하지 마세요.
코드 형식 필드에서 디버그하려는 코드 형식이 나열되어 있는지 확인합니다.
기본 자동 설정은 대부분의 앱 형식에서 작동하지만 특정 코드 형식을 선택하여 디버거 유형을 수동으로 지정할 수 있습니다.
첨부를 선택합니다.
Visual Studio에서프로세스에 연결>를 선택하거나 Ctrl+Alt+P를 눌러 프로세스에 연결 대화 상자를 엽니다.
연결 유형을 확인합니다.
대부분의 시나리오에서는 기본값을 사용할 수 있습니다. Linux 또는 컨테이너화된 앱 디버깅과 같은 일부 시나리오에는 다른 연결 유형이 필요합니다. 자세한 내용은 이 문서의 다른 섹션 또는 일반적인 디버깅 시나리오를 참조하세요.
연결 대상 상자에서 다음 방법 중 하나를 사용하여 원격 컴퓨터를 선택합니다.
- 연결 대상 옆에 있는 드롭다운 목록 화살표를 선택하고 드롭다운 목록에서 컴퓨터 이름을 선택합니다.
- 연결 대상 상자에 컴퓨터 이름을 입력하고 Enter 키를 누릅니다.
- 연결 대상 상자 옆에 있는 찾기 단추를 선택하여 원격 연결 대화 상자를 엽니다. 원격 연결 대화 상자에는 로컬 서브넷에 있거나 컴퓨터에 직접 연결된 모든 디바이스가 나열됩니다. 원격 디바이스를 검색하려면 서버 에서 아웃바운드 UDP 포트 3702를 열어 야 할 수 있습니다. 사용할 컴퓨터나 디바이스를 선택한 후 선택을 클릭하십시오.
Visual Studio가 컴퓨터 이름에 필요한 포트를 추가하는지 확인합니다. 이 포트는 원격 컴퓨터 이름<:p ort 형식>으로 표시됩니다.
비고
원격 컴퓨터 이름을 사용하여 연결할 수 없는 경우 IP 및 포트 주소(예
123.45.678.9:4022: )를 사용해 보세요. 4024는 Visual Studio 2019 원격 디버거의 기본 포트입니다. 다른 원격 디버거 포트 할당은 원격 디버거 포트 할당을 참조하세요.연결 형식 설정은 디버깅 세션 간에 유지됩니다. 연결 대상 설정은 해당 대상과 성공적으로 디버깅 연결이 발생한 경우에만 디버깅 세션 간에 유지됩니다.
새로 고침을 클릭하여 사용 가능한 프로세스 목록을 채웁다.
팁 (조언)
프로세스에 연결 대화 상자가 열려 있는 동안 백그라운드에서 프로세스를 시작하고 중지할 수 있으므로 실행 중인 프로세스 목록이 항상 최신 상태가 아닐 수 있습니다. 언제든지 새로 고침 을 선택하여 현재 목록을 볼 수 있습니다.
사용 가능한 프로세스 목록에서 연결하려는 프로세스 또는 프로세스를 찾아 선택합니다.
프로세스를 빠르게 선택하려면 프로세스 필터링 상자에 해당 이름 또는 첫 글자를 입력합니다.
프로세스 이름을 모르는 경우 목록을 탐색하거나 일반적인 프로세스 이름에 대한 일반적인 디버깅 시나리오를 참조하세요.
모든 사용자 계정에서 실행되는 프로세스를 찾으려면 모든 사용자의 프로세스 표시 확인란을 선택합니다.
비고
신뢰할 수 없는 사용자 계정이 소유한 프로세스에 연결하려고 하면 보안 경고 대화 상자 확인이 표시됩니다. 자세한 내용은 보안 경고를 참조하세요. 신뢰할 수 없는 사용자가 소유한 프로세스에 연결하는 것은 위험할 수 있습니다. 다음 정보가 의심스럽거나 확실하지 않은 경우 이 프로세스에 연결하지 마세요.
연결할 대상 필드에 디버그하려는 코드 형식이 나열되어 있는지 확인하십시오. 기본 자동 설정은 대부분의 앱 유형에서 작동합니다.
기본 연결 형식을 사용하는 경우 연결하려는 코드 유형을 수동으로 선택할 수 있습니다. 그렇지 않으면 선택 옵션을 사용하지 않도록 설정할 수 있습니다.
코드 형식을 수동으로 선택하려면 다음을 수행합니다.
첨부를 선택합니다.
비고
디버깅을 위해 여러 앱에 연결할 수 있지만 한 번에 하나의 앱만 디버거에서 활성화됩니다. Visual Studio 디버그 위치 도구 모음 또는 프로세스 창에서 활성 앱을 설정할 수 있습니다.
경우에 따라 원격 데스크톱(터미널 서비스) 세션에서 디버그하는 경우 사용 가능한 프로세스 목록에 사용 가능한 모든 프로세스가 표시되지 않습니다. 사용자 계정이 제한된 사용자로 Visual Studio를 실행하는 경우 사용 가능한 프로세스 목록에 세션 0에서 실행 중인 프로세스가 표시되지 않습니다. 세션 0은 w3wp.exe포함한 서비스 및 기타 서버 프로세스에 사용됩니다. 관리자 계정으로 Visual Studio를 실행하거나 원격 데스크톱 세션 대신 서버 콘솔에서 Visual Studio를 실행하여 문제를 해결할 수 있습니다.
이러한 해결 방법이 모두 가능하지 않은 경우 세 번째 옵션은 Windows 명령줄에서 실행 vsjitdebugger.exe -p <ProcessId> 하여 프로세스에 연결하는 것입니다.
tlist.exe사용하여 프로세스 ID를 확인할 수 있습니다.
tlist.exe얻으려면 WDK 및 WinDbg 다운로드에서 사용할 수 있는 Windows용 디버깅 도구를 다운로드하여 설치합니다.
Azure App Service에서 실행되는 .NET Core 프로세스에 연결(Windows)
Azure App Service(Windows)에 게시하는 경우 Azure의 원격 디버그 ASP.NET Core 또는 Azure App Service 디버깅을 참조하세요.
Azure App Service에서 실행되는 .NET Core 프로세스에 연결(Windows)
Azure App Service(Windows)에 게시하는 경우 게시 프로필의 호스팅 아래에 있는 ... 메뉴 아래에 디버거 연결 옵션이 있습니다. Visual Studio는 프로필이 게시되는 Azure App Service(Windows) 인스턴스에 원격 디버거를 연결하려고 시도합니다.
SSH를 사용하여 Linux에서 실행되는 .NET Core 프로세스에 연결
자세한 내용은 SSH를 사용하여 Linux에서 실행되는 원격 디버그 .NET Core를 참조하세요.
Docker 컨테이너에서 실행되는 프로세스에 연결
Visual Studio 2019부터 Visual Studio 디버거를 Docker 컨테이너에서 실행되는 프로세스에 연결할 수 있습니다. Linux .NET Core Docker 컨테이너의 경우 Linux Docker 컨테이너에서 실행되는 프로세스에 연결을 참조하세요. Windows Docker 컨테이너의 경우 Windows Docker 컨테이너에서 실행되는 프로세스에 연결을 참조하세요.
프로세스에 다시 연결
디버그>프로세스에 다시 연결 (Shift+Alt+P)을 선택하여 이전에 연결했던 프로세스에 신속하게 다시 연결할 수 있습니다. 이 명령을 선택하면 디버거는 먼저 이전 프로세스 ID를 일치시키려고 시도하고 실패하는 경우 이전 프로세스 이름과 일치시켜 연결한 마지막 프로세스에 즉시 연결하려고 시도합니다. 일치하는 항목이 없거나 여러 프로세스의 이름이 같은 경우 올바른 프로세스를 선택할 수 있도록 프로세스에 연결 대화 상자가 열립니다.
비고
프로세스에 다시 연결 명령은 Visual Studio 2017부터 사용할 수 있습니다.
일반적인 디버깅 시나리오
프로세스에 연결 및 연결할 프로세스를 사용할지 여부를 결정하는 데 도움이 되는 다음 표에는 사용 가능한 추가 지침에 대한 링크와 함께 몇 가지 일반적인 디버깅 시나리오가 표시됩니다. (목록이 완전하지 않습니다.)
연결할 실행 중인 프로세스를 빠르게 선택하려면 Visual Studio에서 Ctrl+Alt+P를 입력한 다음 프로세스 이름의 첫 글자를 입력합니다.
디버거가 C++로 작성된 코드에 연결하려면 코드를 내보내 DebuggableAttribute야 합니다.
/ASSEMBLYDEBUG 링커 옵션과 연결하여 코드에 자동으로 추가할 수 있습니다.
클라이언트 쪽 스크립트 디버깅의 경우 브라우저에서 스크립트 디버깅을 사용하도록 설정해야 합니다. Chrome에서 클라이언트 쪽 스크립트를 디버깅하려면 JavaScript 또는 TypeScript 를 코드 형식으로 선택하고 앱 유형에 따라 모든 Chrome 인스턴스를 닫고 디버깅 모드에서 브라우저를 시작해야 할 수 있습니다(명령줄에서 입력 chrome.exe --remote-debugging-port=9222 ).
클라이언트 쪽 스크립트 디버깅의 경우 브라우저에서 스크립트 디버깅을 사용하도록 설정해야 합니다. Chrome에서 클라이언트 쪽 스크립트를 디버깅하려면 JavaScript(Chrome) 또는 JavaScript(Microsoft Edge - Chromium) 를 코드 형식으로 선택하고 앱 유형에 따라 모든 Chrome 인스턴스를 닫고 디버깅 모드에서 브라우저를 시작해야 할 수 있습니다(명령줄에서 입력 chrome.exe --remote-debugging-port=9222 ). 이전 버전의 Visual Studio에서는 Chrome용 스크립트 디버거가 웹 키트였습니다.
| Scenario | 디버그 메서드 | 프로세스 이름 | 메모 및 링크 |
|---|---|---|---|
| ASP.NET Core - IIS(인터넷 정보 서비스) 서버의 원격 디버그 | 원격 도구 사용 및 프로세스에 연결 | w3wp.exe 또는 dotnet.exe | .NET Core 3부터 w3wp.exe 프로세스는 기본 앱 내 호스팅 모델에 사용됩니다. 앱 배포는 IIS에 게시를 참조하세요. 자세한 내용은 원격 IIS 컴퓨터의 원격 디버깅 ASP.NET Core를 참조하세요. |
| ASP.NET Core - 디버거 없이 앱을 시작한 후 로컬 컴퓨터에서 디버그 | 프로세스에 연결 사용 | appname.exe 또는 iisexpress.exe | 프로파일링 시와 같이 앱 로드를 더 빠르게 만드는 데 도움이 될 수 있습니다. ASP.NET Core의 기본 로컬 서버(kestrel) 프로세스는 appname.exe. |
| ASP.NET 4 또는 4.5 - IIS 서버의 원격 디버그 | 원격 도구 사용 및 프로세스에 연결 | w3wp.exe | 원격 IIS 컴퓨터에서 원격 디버깅 ASP.NET 참조 |
| 클라이언트 쪽 스크립트 - 지원되는 앱 유형에 대한 로컬 IIS 서버에서 디버그 | 프로세스에 연결 사용 | chrome.exe 또는 msedge.exe | 스크립트 디버깅을 사용하도록 설정해야 합니다. Chrome의 경우, 명령줄에서 chrome.exe --remote-debugging-port=9222를 입력하여 디버그 모드로 Chrome을 실행하고, 연결 대상 필드에서 JavaScript 또는 TypeScript를 선택해야 합니다. |
| C#, Visual Basic 또는 C++ 앱 - 로컬 컴퓨터에서 디버그 | 표준 디버깅(F5) 또는 프로세스에 연결 사용 | {appname}.exe | 대부분의 시나리오에서는 프로세스에 연결하지 않고 표준 디버깅을 사용합니다. |
| Windows 데스크톱 앱 - 원격 디버그 | 원격 도구 | N/A | C# 또는 Visual Basic 앱 원격 디버그 또는C++ 앱 원격 디버그 참조 |
| Linux의 .NET Core - 디버그 | 프로세스에 연결 사용 | dotnet.exe 또는 고유한 프로세스 이름 | SSH를 사용하려면 SSH를 사용하여 Linux에서 실행되는 원격 디버그 .NET Core를 참조하세요. 컨테이너화된 앱의 경우 Docker 컨테이너에서 실행되는 프로세스에 연결을 참조하세요. |
| 컨테이너화된 앱 - 디버그 | 프로세스에 연결 사용 | dotnet.exe 또는 고유한 프로세스 이름 | Docker 컨테이너에서 실행되는 프로세스에 연결 참조 |
| Linux의 Python - 원격 디버그 | 프로세스에 연결 사용 | debugpy | Python 도구에서 원격으로 연결 참조 |
| 지원되는 기타 앱 유형 - 서버 프로세스에서 디버그 | 서버가 원격인 경우 원격 도구를 사용하고 프로세스에 연결 | chrome.exe, msedge.exe또는 기타 프로세스 | 필요한 경우 리소스 모니터를 사용하여 프로세스를 식별합니다. 원격 디버깅을 참조하세요. |
| UWP(유니버설 Windows 플랫폼) 앱, OneCore, HoloLens 또는 IoT 앱 - 원격 디버그 | 설치된 앱 패키지 디버그 | N/A | 프로세스에 연결 대신 설치된 앱 패키지 디버그 참조 |
| UWP 앱, OneCore, HoloLens 또는 IoT - Visual Studio에서 시작하지 않은 앱 디버그 | 설치된 앱 패키지 디버그 | N/A | 프로세스에 연결 대신 설치된 앱 패키지 디버그 참조 |
디버거 기능 사용
프로세스에 연결할 때 Visual Studio 디버거의 전체 기능(예: 중단점 적중)을 사용하려면 앱이 로컬 원본 및 기호와 정확히 일치해야 합니다. 즉, 디버거는 올바른 기호(.pdb) 파일을 로드할 수 있어야 합니다. 기본적으로 디버그 빌드가 필요합니다.
원격 디버깅 시나리오의 경우 Visual Studio에서 소스 코드(또는 소스 코드의 복사본)가 이미 열려 있어야 합니다. 원격 컴퓨터에서 컴파일된 앱 이진 파일은 로컬 컴퓨터와 동일한 빌드에서 제공해야 합니다.
일부 로컬 디버깅 시나리오에서는 올바른 기호 파일이 앱에 있는 경우 소스에 대한 액세스 권한 없이 Visual Studio에서 디버그할 수 있습니다. 기본적으로 디버그 빌드가 필요합니다. 자세한 내용은 기호 및 원본 파일 지정을 참조하세요.
연결 오류 문제 해결
일부 시나리오에서는 디버거가 디버그할 코드 형식을 올바르게 식별하는 데 도움이 필요할 수 있습니다. 연결 값이 올바르게 설정되었지만( 사용 가능한 프로세스 목록에서 올바른 프로세스를 볼 수 있음) 디버거를 연결하지 못하는 경우 코드 형식 목록에서 가장 적절한 디버거를 선택해 보세요. 예를 들어 Linux 또는 Python 앱을 디버깅하는 경우 필요할 수 있습니다.
일부 시나리오에서는 디버거가 디버그할 코드 형식을 올바르게 식별하는 데 도움이 필요할 수 있습니다. 연결 값이 올바르게 설정되었지만( 사용 가능한 프로세스 목록에서 올바른 프로세스를 볼 수 있음) 디버거가 연결되지 않는 경우 연결 유형 목록에서 가장 적절한 연결 유형을 선택해 보세요. 예를 들어 Linux 또는 Python 앱을 디버깅하는 경우 필요할 수 있습니다. 기본 연결 형식을 사용하는 경우 이 섹션의 뒷부분에 설명된 대로 연결할 특정 코드 유형을 선택할 수도 있습니다.
디버거가 실행 중인 프로세스에 연결되면 프로세스에 하나 이상의 코드 형식이 포함될 수 있습니다. 디버거가 연결할 수 있는 코드 형식이 코드 형식 선택 대화 상자에서 표시되고 선택됩니다.
경우에 따라 디버거는 한 코드 형식에 성공적으로 연결할 수 있지만 다른 코드 형식에는 연결할 수 없습니다. 일반적으로 다음과 같은 경우에 발생합니다.
- 원격 컴퓨터에서 실행 중인 프로세스에 연결하려고 합니다. 원격 컴퓨터에는 일부 코드 형식에 대해 원격 디버깅 구성 요소가 설치되어 있지만 다른 코드 형식에는 설치되어 있지 않을 수 있습니다.
- 직접 데이터베이스 디버깅을 위해 둘 이상의 프로세스에 연결하려고 합니다. SQL 디버깅은 단일 프로세스에만 연결을 지원합니다.
디버거가 코드 형식이 전부는 아니지만 일부 코드 형식에 연결할 수 있는 경우 연결하지 못한 형식을 식별하는 메시지가 표시됩니다.
디버거가 하나 이상의 코드 형식에 성공적으로 연결되면 프로세스를 디버그할 수 있습니다. 성공적으로 연결된 코드 형식만 디버그할 수 있습니다. 프로세스에서 연결되지 않은 코드는 계속 실행되지만 중단점을 설정하거나, 데이터를 보거나, 해당 코드에서 다른 디버깅 작업을 수행할 수 없습니다.
디버거가 코드 형식에 연결하지 못한 이유에 대한 자세한 정보를 원하는 경우 해당 코드 형식에만 다시 연결합니다.
코드 형식을 연결하지 못한 이유에 대한 특정 정보 가져오기
프로세스에서 분리합니다. 디버그 메뉴에서 모두 분리를 선택합니다.
연결하지 못한 코드 형식만 선택하여 프로세스에 다시 연결합니다.
프로세스에 연결 대화 상자의 사용 가능한 프로세스 목록에서 프로세스를 선택합니다.
코드 형식 옵션에서 연결하지 못한 코드 형식을 선택합니다. 다른 코드 형식의 선택을 취소합니다.
프로세스에 연결 대화 상자에서 연결을 선택합니다.
이번에는 연결이 완전히 실패하고 특정 오류 메시지가 표시됩니다.
프로세스에서 분리합니다. 디버그 메뉴에서 모두 분리를 선택합니다.
연결하지 못한 코드 형식만 선택하여 프로세스에 다시 연결합니다.
프로세스에 연결 대화 상자의 사용 가능한 프로세스 목록에서 프로세스를 선택합니다.
선택하세요
코드 형식 선택 대화 상자에서 이러한 코드 형식 및 연결에 실패한 코드 형식 디버그를 선택합니다. 다른 코드 형식의 선택을 취소합니다.
확인을 선택합니다.
프로세스에 연결 대화 상자에서 연결을 선택합니다.
이번에는 연결이 완전히 실패하고 특정 오류 메시지가 표시됩니다.