WinDbg를 사용하여 디버그

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Azure Artifacts는 기호를 게시하기 위한 전용 기호 서버를 제공합니다. 이 서버를 사용하면 올바른 기호 파일을 자동으로 가져올 수 있는 디버거를 연결하여 애플리케이션을 효율적으로 디버그할 수 있습니다. WinDbg와 같은 도구를 사용하면 실행 파일을 로드하고, 실행 중인 프로세스에 디버거를 연결하고, 기호를 사용하고, 중단점을 설정하고, 코드를 체계적으로 분석할 수 있습니다.

WinDbg에 기호 서버 추가

Azure Artifacts 기호 서버를 사용하려면 기호 검색 경로에 조직을 추가해야 하지만, 그렇게 하려면 먼저 개인용 액세스 토큰을 만들어야 합니다.

  1. 기호(읽기) 범위를 사용하여 개인용 액세스 토큰을 만들고 클립보드에 복사합니다.

  2. WinDbg를 열거나 아직 설치하지 않은 경우 설치 합니다.

  3. 파일을 선택한 다음 OpenExecutable을 선택하여 디버그할 실행 파일을 로드합니다.

  4. 다음 명령을 실행하여 기호 경로를 설정합니다. 자리 표시자를 특정 조직 이름으로 바꿉다.

    .sympath+ https://artifacts.dev.azure.com/<ORGANIZATION_NAME>/_apis/symbol/symsrv
    
  5. bp 명령을 실행하여 중단점을 설정합니다. 그러면 기호 요청이 트리거됩니다.

  6. 인증 프롬프트 중에 이전에 생성한 개인용 액세스 토큰 을 삽입합니다. 사용자 이름 필드를 비워수 있습니다. WinDbg는 실행 파일에 대한 기호를 가져오기 위해 진행합니다.

  7. 기호가 로드되었는지 확인하려면 lm 명령을 실행하여 로드된 모든 모듈을 나열합니다.

디버그 시작

WinDbg는 디버깅의 범위와 다양성을 향상시켜 사용자 모드 및 커널 모드 모두에서 구성 요소의 효과적인 문제 해결을 가능하게 합니다.