Visual Studio 디버거에서 실행중인 .NET 응용 프로그램 의 현재 디렉터리는 어떻게 찾을 수 있습니까?Visual Studio 디버깅 세션 중에 현재 디렉터리 찾기?
업데이트 1. 명확히하려면 : 코드 을 변경하거나 프로그램 자체에서 정보를 얻고 싶지 않습니다. 단지 에 대한 정보를 얻으려면 현재 디버깅 중입니다.
닷넷 Windows Forms 응용 프로그램 (혼합 VB.NET 및 C#)를 디버깅하는 동안
은 내가 XML 파일을 에서 읽을 된 위치에서 확실하지 않았다. 현재 디렉터리가 응용 프로그램의 디렉터리가 될 것으로 예상했습니다. 그러나, 프로세스 탐색기에서의 처리 결과에 대한 속성을 사용하여 :D : \ 프로그램 파일 마이크로 소프트 비주얼 스튜디오 \ (86) 9.0 \ Common7 \
(오른쪽 클릭 프로세스/등록/탭 이미지/현재 디렉토리).
프로세스 탐색기 의 주요보기에서 프로세스에 커서를 가져 가면 는D : \ dproj \ DTASCall \ DTASuperCharge \ 빈 \
다른 결과 (스크린 샷은 아래 참조)를 밝혀
무엇이 맞습니까?
응용 프로그램 독립형 디스플레이를 예상 현재 디렉토리,
D 시작 : 프로세스 탐색기 프로세스 속성 창에서
\ 빈 \ \ dproj \ DTASCall \ DTASuperCharge합니다.
프로세스 탐색기의
주석 스크린 샷 : 당신의 디버그 속성을 변경하지 않는 한 코드 내에서
Alt text http://www.pil.sdu.dk/1/until2039-12-31/PEdiscrepancy_2009-09-02.png
실제 프로그램이 실행되고 있지 않다는 것은 무엇을 의미합니까? 스크린 샷을 찍을 때 중단 점에서 프로그램이 중지되었습니다. –
흠, 무슨 뜻인지 알 겠어. 나는 .vshost에 관해서 틀 렸습니다. 나는 똑같은 것을 체크했고, procexp는 문제없이 현재 작업 디렉토리를 추적합니다. System.IO.Directory.GetCurrentDirectory()의 출력을 기본 프로젝트 설정과 비교해보십시오. 이것은 응용 프로그램의 bin \ Debug 디렉토리 여야합니다. 읽으려고하는 XML 파일이 프로젝트 항목 인 경우 Build Action 속성을 "Content"로 설정하고 Output Directory로 복사 속성을 적절하게 설정해야합니다. 또한 현재 디렉토리가 아닌 응용 프로그램의 루트 디렉토리에서 읽을 가치가 있습니다. – Richard
디버그 페이지의 "작업 디렉터리"필드가 비어 있습니다. 그러나 컴파일 페이지에서 "출력 경로 빌드"필드에는 "bin \"이 포함됩니다. 그것은 비어 있어야 하는가? 이 프로젝트는 2003 년 Visual Studio에 의해 만들어졌으며 그 이후로 두 번의 Visual Studio 업데이트가있었습니다. 현재 응용 프로그램은 bin 디렉토리가 아니라 bin 디렉토리에서 시작합니다. –