2013-07-09 2 views
5

Visual Studio에서 실버 라이트 OOB 프로젝트를 디버깅 할 때 디버거가 자동으로 연결되지만 iisexpress 프로세스에는 연결되지 않는 시나리오가 있습니다. Silverlight 응용 프로그램이 연결하는 웹 서비스를 실행 중입니다. iisexpress를 시작하지만 자동으로 첨부하지는 않습니다. 디버그 -> 첨부 파일로 수동으로 이동하여 iisexpress를 찾아 클라이언트 및 서버 측 코드를 디버깅하도록 첨부해야합니다.Visual Studio 2012 추가 기능 - 프로세스에 디버거를 연결하는 방법

VS2012는 매크로를 제거 했으므로 자동으로 첨부하는 데 사용할 수 없으므로 대신 간단한 추가 기능을 만들려고합니다.

나는 프로세스에 붙이는 방법에 붙어있다. 적절한 시간에 실행되고 iisexpress 프로세스를 찾는 다음과 같은 방법을 시도했지만 모두 3은 예외를 첨부하려고 시도합니다. 아무도 내가 이것을 할 수있는 방법을 제안 할 수 있습니까? 모두 VS위한

private void DebuggerEventsOnOnEnterRunMode(dbgEventReason reason) 
{ 
    if (reason == dbgEventReason.dbgEventReasonLaunchProgram) 
    { 
     foreach (Process process in _applicationObject.Debugger.LocalProcesses) 
     { 
      var nameparts = process.Name.Split(Path.DirectorySeparatorChar); 
      string name = nameparts[nameparts.Length - 1]; 
      if (name.Contains("iisexpress")) 
        process.Attach(); 
        // also tried: _applicationObject.ExecuteCommand("Debug.AttachToProcess", process.Name); 
        // and: _applicationObject.ExecuteCommand("Debug.AttachToProcess", name); 
     } 
    } 
} 
+0

다소 관련 : http://stackoverflow.com/q/6696746/10245 –

답변

4

작품 2010 & VS 2012 :

솔루션 -> 오른쪽 클릭 -> 설정 시작 프로젝트 -> 여러 시작 프로젝트

당신이 개 프로젝트를 선택하고 작업을 으로 설정하십시오 (두 번째 프로젝트의 경우)이 아닌 경우 시작 디버깅하지 않고 시작.

+0

고마워요! 그것도 VS2012의 트릭을 수행합니다. 그냥 둘 다 "시작"과 추가 필요 없음 둘 다 설정 :) – mutex

관련 문제