방법: 호출 스택 창 사용

이 항목은 다음 언어에 적용됩니다.

Edition

Visual Basic

C#

F#

C++

Web Developer

Express

항목이 적용됨 항목이 적용됨 항목이 적용됨

항목이 적용됨

항목이 적용됨

Pro, Premium 및 Ultimate

항목이 적용됨

항목이 적용됨

항목이 적용됨

항목이 적용됨

항목이 적용됨

호출 스택 창에서 현재 스택에 있는 함수 또는 프로시저 호출을 볼 수 있습니다.

호출 스택 창에는 각 함수의 이름과 함수 작성에 사용된 프로그래밍 언어가 표시됩니다. 함수 또는 프로시저 이름 다음에는 모듈 이름, 줄 번호, 바이트 오프셋 및 매개 변수의 이름, 형식, 값과 같은 선택적 정보가 표시될 수 있습니다. 이러한 선택적 정보의 표시 여부를 선택할 수 있습니다.

노란색 화살표는 현재 실행 포인터가 있는 스택 프레임을 나타냅니다. 기본적으로 이는 소스, 디스어셈블리, 지역, 조사식자동 창에 해당 정보가 표시되는 프레임입니다. 컨텍스트를 스택의 다른 프레임으로 변경하려면 호출 스택 창을 사용합니다.

호출 스택의 일부에 대해 디버깅 기호를 사용할 수 없는 경우 호출 스택 창에는 호출 스택의 해당 부분에 대한 올바른 정보가 표시되지 않을 수 있습니다. 다음과 같이 출력됩니다.

[아래 프레임은 올바르지 않거나 누락되었거나 name.dll에 대해 로드된 기호가 없음]

관리 코드에서는 기본적으로 사용자가 작성하지 않은 코드에 대한 정보가 호출 스택 창에서 숨겨집니다. 숨겨진 정보 대신 다음과 같이 출력됩니다.

[<External Code>]

사용자가 작성하지 않은 코드는 "내 코드"가 아닌 모든 코드를 의미합니다. "내 코드"에 대한 자세한 내용은 방법: 내 코드만 한 단계씩 실행을 참조하십시오. 바로 가기 메뉴를 사용하면 디버거용 코드의 호출 스택 정보를 표시하도록 선택할 수 있습니다.

바로 가기 메뉴를 사용하면 스레드 간의 호출 표시 여부를 선택할 수 있습니다.

참고

표시되는 대화 상자와 메뉴 명령은 실제 설정이나 버전에 따라 도움말에서 설명하는 것과 다를 수 있습니다. 설정을 변경하려면 도구 메뉴에서 설정 가져오기 및 내보내기를 선택합니다. 자세한 내용은 설정에 대한 작업을 참조하십시오.

중단 모드 또는 실행 모드에서 호출 스택 창을 표시하려면

  • 디버그 메뉴에서 을 선택한 다음 호출 스택을 클릭합니다.

표시된 선택적 정보를 변경하려면

  • 호출 스택 창을 마우스 오른쪽 단추로 클릭하고 <the information that you want> 표시를 설정하거나 지웁니다.

사용자가 작성하지 않은 코드 프레임을 호출 스택 창에 표시하려면

  • 호출 스택 창에서 마우스 오른쪽 단추를 클릭하고 외부 코드 표시를 선택합니다.

다른 스택 프레임으로 전환하려면

  1. 호출 스택 창에서, 보려는 코드와 데이터가 포함된 프레임을 마우스 오른쪽 단추로 클릭합니다.

  2. 프레임으로 전환을 선택합니다.

    선택한 프레임 옆에 끝이 굽은 녹색 화살표가 나타납니다. 실행 포인터는 여전히 노란색 화살표로 표시되어 있는 원래 프레임에 그대로 있습니다. 디버그 메뉴에서 한 단계씩 코드 실행 또는 계속을 선택하면 선택한 프레임이 아닌 원래 프레임에서 실행이 계속됩니다.

다른 스레드에서의 호출 또는 다른 스레드로의 호출을 표시하려면

  • 호출 스택 창을 마우스 오른쪽 단추로 클릭하고 다른 스레드로 호출/다른 스레드에서 호출 포함을 선택합니다.

호출 스택에 있는 함수의 소스 코드를 보려면

  • 호출 스택 창에서 소스 코드를 보려는 함수를 마우스 오른쪽 단추로 클릭하고 소스 코드로 이동을 선택합니다.

호출 스택에 있는 함수의 디스어셈블리 코드를 보려면

  • 호출 스택 창에서 디스어셈블리 코드를 보려는 함수를 마우스 오른쪽 단추로 클릭하고 디스어셈블리로 이동을 선택합니다.

호출 스택 창에서 특정 함수까지 실행하려면

함수 호출의 종료 지점에 중단점을 설정하려면

모듈의 기호를 로드하려면

  • 호출 스택 창에서 기호를 다시 로드하려는 모듈이 표시된 프레임을 마우스 오른쪽 단추로 클릭하고 기호 로드를 선택합니다.

기호 로드

호출 스택 창에서 현재 기호가 로드되어 있지 않은 코드에 대한 디버깅 기호를 로드할 수 있습니다. 이러한 기호는 Microsoft 공용 기호 서버에서 다운로드한 .NET Framework 또는 시스템 기호일 수도 있고 디버깅 중인 컴퓨터의 기호 경로에 있는 기호일 수도 있습니다.

자세한 내용은 방법: 기호 서버 사용방법: 기호 위치 및 로딩 동작 지정을 참조하십시오.

기호를 로드하려면

  1. 호출 스택 창에서 기호가 로드되지 않은 프레임을 마우스 오른쪽 단추로 클릭합니다. 프레임이 흐리게 표시됩니다.

  2. 다음에서 기호 로드를 가리킨 다음 Microsoft 공용 기호 서버 또는 기호 경로를 클릭합니다.

기호 경로를 설정하려면

  1. 모듈 창에서 모듈을 마우스 오른쪽 단추로 클릭합니다.

  2. 기호 설정을 클릭합니다.

    옵션 대화 상자가 열리고 기호 페이지가 표시됩니다.

  3. 옵션 대화 상자에서 폴더 아이콘을 클릭합니다.

    기호 파일(.pdb) 위치 상자에 커서가 표시됩니다.

  4. 디버깅 중인 컴퓨터의 기호 위치에 대한 디렉터리 경로 이름을 입력합니다. 로컬 디버깅인 경우 이 컴퓨터는 로컬 컴퓨터이고 원격 디버깅인 경우 이 컴퓨터는 원격 컴퓨터입니다.

  5. 확인을 클릭하여 옵션 대화 상자를 닫습니다.

참고 항목

작업

방법: 기호 서버 사용

방법: 기호 위치 및 로딩 동작 지정

참조

방법: 디버거 창의 숫자 형식 변경

개념

호출 스택 창의 혼합 코드 및 누락된 정보

디버거에서 데이터 보기