2010-01-11 4 views
1

VS 2008의 디버그 모드에서 프로젝트의 스택 추적을 보는 방법은 무엇입니까?VS 2008의 디버그 모드에서 프로젝트의 스택 추적을 보는 방법

저는 VS2008에서 큰 응용 프로그램을 실행하고 디버깅하고 있습니다. 빌드 모드는 DEBUG, Windows Forms 프로젝트입니다. 거기에 단추를 클릭하는 등의 형태로 정상적인 작업을 수행하는 동안 예외가 스택 추적 같은 코드의 조각을 볼 수있는 방법이 있나요 ...

프로젝트가 너무 커서 내가 쉽게 찾을 필요가 크다. 폼은 트리의 각 노드에서 호출됩니다. Call Stack Trace와 같은 것을 볼 수 있다면 매우 도움이 될 것입니다. 호출 스택이이 btw처럼 작동하지 않습니다.

감사합니다.

+1

이해가 안됩니다. 왜 버튼 클릭 핸들러에 중단 점을 설정할 수 없었습니까? – wj32

+0

@Rodel 관련 : "호출 스택이 작동하지 않습니다."응용 프로그램을 실행할 때 중단 점에 도달하지 않으면 호출 스택이 비어 있음을 의미합니까? 현재 코드 위치를 기반으로 응용 프로그램이 실행될 때 계속 호출 스택이 업데이트되는 것을보고 싶습니까? – Ash

답변

1

정적 또는 동적 프로그램 분석 도구가 필요합니다. 다음은 .NET에서 사용할 수있는 몇 가지 인기있는 도구 중 하나 인 a good list입니다.

동적 분석 프로그램을 사용하면 프로그램을 실행하고 나중에 검토 할 수 있도록 애플리케이션의 클래스 구성 및 호출 계층을 기록 할 수 있습니다.

정적 분석 프로그램을 사용하려면 소스 코드에서 프로그램을 가리켜 야하고 유사하지만 가능성이있는 호출 계층 구조 분석을 작성해야합니다.

도 참조하십시오. What static analysis tools are available for c#

+0

모든 혼란을 가져 주어서 죄송합니다. 그러나 귀하의 답변은 내가 성취하고자하는 것에 매우 가깝습니다. 동적 분석 도구 winform 응용 프로그램에서 모든 UI 상호 작용을 수행 할 때 각 코드가 실행되는 것을 볼 수 있습니다. –

+0

왜 내가 이것을 필요로합니까? 큰 응용 프로그램이 팀원에게 넘겨지며 처음에는 코드 수준까지 연구해야합니다. 물론 우리는 물건이 어디에 놓여 있는지 전혀 모른다. 중단 점은 중단 점을 넣을 위치를 아는 경우에만 작동합니다. 그러나 여러 솔루션에서 수백 가지 양식 및 클래스의 양식이로드되는 것을 모를 경우 모든 클릭에 대해 실행되는 내용을 보는 것처럼 쉽습니다. –

+0

@Rodel, Yes, 코드 분석 도구는 문서가 거의 없거나 거의없는 대형 응용 프로그램으로 덤프 할 때 매우 유용합니다. Windows Forms 응용 프로그램, WPF 등 아무런 차이가 없습니다. 또한 프로그램이 대부분의 시간을 보내는 곳을 배우며 복잡하거나 잘못 설계된 코드를 나타냅니다. 행운을 빕니다. – Ash

5

메뉴 : Debug, Windows, Call Stack.

하지만 "작동하지 않는다"고 말하면 조금 더 자세히 설명해 주시겠습니까?

+0

나는 OP가 실제로 프로그램이 실행 중일 때 호출 스택을 볼 수 있는지 묻고 있다고 생각합니다. 나는 왕이 될 수 있지만 VS 호출 스택 (즉, 동적으로 업데이 트되지 않습니다)에 대한 귀하의 프로그램에 침입해야한다고 생각합니다. – Ash

+0

애쉬, '실시간'호출 스택은 프로그램을 엄청나게 늦추고 동시에 너무 빨리 읽을 수 있습니다. –

+0

헨크, 어쩌면,하지만 OP가 "작동하지 않는다"는 의미라고 생각합니다. – Ash

관련 문제