windbg 심볼 다운로드

상황이 당신과 당신의 동료인 경우, 나는 매우 기호 프록시를 설정하는 것이 좋습니다. 이렇게하면 모두 효과적으로 캐시를 공유 할 수 있으므로 한 명이 기호에 액세스하면 나머지 는 훨씬 빨리 얻을 수 있습니다. (내 정상적인 설정은 조금 다르다: 나는 빈 Visual Studio에서 목록을 두고 대신 C와 같은 _NT_SYMBOL_PATH 구성: 기호Windows10x64; C:기호Windows10x86;srv*C:OnlineCache*https://msdl.microsoft.com/download/기호 그래서 그것은 로컬로 설치 된 기호를 먼저 시도 합니다. 나는 비록 당신의 제안을 시도 할 때 Visual Studio의 목록에 마이크로 소프트 심볼 서버를 추가했지만 도움이되지 않았다) 예를 들어, c :dxsym ExtrasSymbols에서 얻은 c:dxsymExtrasSymbols의 모든 심볼을 주 서버 기호라는 심볼 서버 파일 공유에 재귀적으로 색인화하려면 다음 명령을 사용할 수 @Torkell. 오히려, 내가 질문을 이해, Windows 업데이트 정기적으로 나중에 오래 된 되 고 이전에 다운로드 된 기호에 이르게 시스템 구성 요소를 대체 하 고 따라서 기호 서버에서 기호의 또 다른 가져오기를 트리거합니다. 오프라인 상태인 컴퓨터에 대한 기호를 다운로드해야 하는 경우 /om 및 /im 명령줄 인수를 사용하는 이러한 지침을 따를 수 있습니다. 예를 들어 mainserver기호에 파일 공유를 설정하면 팀 구성원이 _NT_SYMBOL_PATH 요구 사항 섹션에 나열된 Citrix 제품에 대한 디버그 기호를 획득하려면 실제로 Samba 공유로 심볼 캐시를 설정했습니다. 모든 사람이 그 캐시를 통해 당기고 있었기 때문에 (_NT_SYMBOL_PATH 덕분에) 거의 프록시처럼 행동했습니다. 그러나 나는 적절한 프록시를 설정하는 장점을 볼 수 있다고 생각합니다. 내 가장 큰 문제는 IIS입니다. [로컬 캐시]를 사용된 기호의 캐시(예: %SYSTEMROOT%) 또는 c:기호를 저장할 컴퓨터의 디렉터리 이름으로 바꿉니다. 그러나 기호없이 디버깅하기가 특히 어려운 경우도 있습니다. 예를 들어 PDB 파일을 빌드한 프로그램을 디버깅하고 기호가 없는 DLL의 함수에서 콜백에 충돌하는 경우 스택을 디코딩할 수 없기 때문에 콜백을 일으킨 함수를 볼 수 없습니다.

이는 PDFB를 제공하지 않는 경우 타사 라이브러리또는 PdB를 사용할 수 없는 경우 이전 운영 체제 구성 요소에서 자주 발생합니다. 콜백은 메시지 전달, 열거, 메모리 할당 또는 예외 처리 중에 발생하는 경우가 많습니다. 정확한 스택없이 이러한 기능을 디버깅하는 것은 실망스러울 수 있습니다. 이 cmdlet에 대한 심볼 서버 인수(-SymbolServer)는 ETL 파일을 이해하고 사람이 읽을 수 있는 형식으로 변환할 수 있습니다. WU 심볼 캐시가 매월 빌드되고 여러 업데이트 릴리스의 WU 기호를 포함하여 업데이트 로그를 완전히 구문 분석할 수 있도록 OS 빌드 버전당 단일 온라인 컴퓨터를 사용하는 것이 좋습니다.