디버깅하려는 MMC 스냅인이 있습니다. 현재 스냅인의 생성자에 배치 된 다음 코드는, 거기에 디버거를 연결 측면에서 작동합니다디버거가 프로세스에 연결하지 않음
public MySnapIn()
{
#if DEBUG
if (!Debugger.IsAttached)
{
Debugger.Launch();
}
#endif
...
}
하지만 정말 짜증나는 항상 비주얼 스튜디오에 디버거를 연결해야 할 수 있습니다. 나는이 과정을 자동화하고 싶다. 이상적으로, 필자는 F5를 누르기 만하면 자동으로 디버거를 연결합니다. 나는 다음과 같은 시도 :
- 프로젝트 속성 -> 외부 프로그램을 시작 ->에 입력 : -> 명령 줄 인수 - "C \ WINDOWS \ SYSTEM32 \ mmc.exe를"
- 프로젝트 속성> 준 그것 .msc 파일 경로 (스냅인 레이아웃을 저장하여 매번로드하기가 쉽기 때문에 항상 파일 -> 스냅인 추가/제거가 필요하지는 않습니다).
이것은 작동하지 않았습니다. 디버거는 자동으로 연결되지 않습니다. 이 프로세스를 자동화하거나 디버거가 자동으로 연결되는 것을 차단하는 방법은 무엇입니까?
+1 디버거가 연결되도록 요청하는 방법 ('Debugger.Launch()'). 나는 그것이 가능하다는 것을 몰랐다. – stakx
@stakx 그것은 * 대부분의 경우 작동합니다 *. 예를 들어 Windows 서비스 또는 GUI가 있어야하는 다른 유형의 응용 프로그램 (소프트 마이크로에 따라)이 있으면 작동하지 않습니다. http://stackoverflow.com/questions/12042054/debugger -Windows-Service-in-Windows-8 WER에 대한 자세한 내용은 디버깅 도구 (크래시 덤프 생성, 크래시 덤프를 사용하여 Visual Studio로로드하고 디버거를 사용하여 모든 응용 프로그램의 개체 상태를 확인하십시오. – Alexandru
@stakx WER는 레지스트리 키 변경 (http://msdn.microsoft.com/en-us/library/windows/desktop/bb787181(v=vs.85).aspx)과 PDB 파일이 필요합니다. 또한 작업 관리자에서 덤프를 생성 할 수 있습니다 (Ctrl + Shift + Esc -> 응용 프로그램을 마우스 오른쪽 단추로 클릭 -> 덤프 파일 생성) – Alexandru