7

내 vshost.exe 파일 이름이 실제 application.exe 파일 이름과 다르므로 응용 프로그램 디버깅을 방해합니다. 난 비주얼 스튜디오 2012, .NET 4.0의 installshiled LE를 사용하고응용 프로그램 실행 파일 이름이 vshost 실행 파일 이름과 다릅니다

- MySolution 
    - Installer.Release 
    - Installer.Debug 
    - Installer.Testing 
    - MyApplication 

다음과 같이

셋업이다.

내 통제 범위를 벗어나는 이유 때문에 응용 프로그램 실행 파일 이름에 MyApplication (Release).exe, MyApplication (Debug).exe, MyApplication (Testing).exe 등의 환경이 포함되어야한다고 결정되었습니다.

쉽게 다음에 .csproj 파일을 수정하여 수행됩니다

<AssemblyName>MyApplication (Release)</AssemblyName> 
<AssemblyName Condition="'$(Configuration)' == 'Debug'">MyApplication (Debug)</assemblyName> 
<AssemblyName Condition="'$(Configuration)' == 'Testing'">MyApplication (Testing)</AssemblyName> 

bin/Debug 폴더에 다음 파일을 생성 Debug에서 응용 프로그램을 구축 :

MyApplication (Debug).exe 
MyApplication (Debug).exe.config 
MyApplication (Debug).vshost.exe 
MyApplication (Debug).vshost.manifest 

지금까지 이렇게 좋은. Testing에서 응용 프로그램을 구축 할 때

, 내 bin/Testing 폴더에 다음 파일을 생성합니다 : 당신이 볼 수 있듯이, 비주얼 스튜디오의 원인 다른 이름이되어 생성되는 vshost 파일의를 던져

MyApplication (Testing).exe 
MyApplication (Testing).exe.config 
MyApplication (Debug).vshost.exe 
MyApplication (Debug).vshost.manifest 

Studio에서 디버깅을 시작할 수 없습니다 비주얼 때문에 디버그 대상 'D : \ 코드 \ MySolution \에서는 MyApplication 테스트 \의에서는 MyApplication (디버그) .EXE \ 빈 \',691 디버깅하려고 할 때 오류를 다음이 누락되었습니다. 프로젝트를 빌드하고 다시 시도하거나 OutputPath 및 AssemblyName 속성을 대상 어셈블리의 올바른 위치를 가리 키도록 적절하게 설정하십시오. 내가 MyApplication (Foo)Debug 구성의 AssemblyName 변경하는 경우

흥미롭게도, 다음 Testing 폴더의 가상 호스트 파일도 MyApplication (Foo)로 이름이 변경된다. 그래서 뭔가 내 Debug 구성을 내 Testing 구성에 사용하도록 강요하고 있습니다. 근데 뭐?

현재 응용 프로그램을 시작한 다음 Visual Studio 디버거를 연결하면 문제를 해결할 수 있지만 시간이 낭비됩니다. vshost 파일은 단순히 무시되기 때문에 설치 프로그램을 빌드 할 때도 문제가되지 않습니다.

지금까지 Google은 실제로 도움이되지 않았습니다. 검색 결과의 대부분은 vshost 파일이 무엇이며 어떻게 작동하는지 설명하지만 필요한 것은 아닙니다. vshost 파일의 이름이 다른 이유와 해결 방법을 알아야합니다.

답변

0

또 다른 해결 방법은 vshost 옵션을 비활성화 할 수 있습니다 :

이동을하여 Project +에 등록, 디버그 탭, 취소 확인 "은 Visual Studio 호스팅 프로세스 사용"옵션을 선택합니다.