AnyCPU를 사용하여 C# 프로젝트를 빌드했습니다. 또한 현재 32 비트 네이티브 DLL에 의존하는 기능을 동적으로로드합니다. 이 기능을 끄면 응용 프로그램이 64 비트 응용 프로그램처럼 매우 행복하게 실행됩니다. 따라서 Visual Studio는 응용 프로그램이 64 비트 프로세스로 실행되도록 결정합니다. 응용 프로그램을 32 비트 프로세스로 강제 실행하려면 CorFlags를 사용하여 32 비트를 설정하는 기본 프로젝트에 게시 빌드 단계가 있어야합니다. Visual Studio 외부에서 응용 프로그램을 실행할 때이 작동합니다. 그러나 F5 키를 사용하여 응용 프로그램을 디버깅 할 경우 32/64 비트가 일치하지 않음을 나타내는 오류가 발생합니다. Visual Studio에서 응용 프로그램이 64 비트 프로세스로 실행될 수 있다고 판단하고 그에 따라 디버거를 설정하는 것처럼 보입니다. CorFlags를 실행하여 32 비트로 강제 실행했습니다.AnyCPU로 빌드 된 C# WinForms 응용 프로그램을 32 비트 프로세스로 디버그하도록합니다.
Visual Studio에서 응용 프로그램을 32 비트 프로세스로 디버깅하도록 강제 할 수있는 방법이 있습니까? 제 3 자 구성 요소가 결국 64 비트로 업그레이드되므로 플랫폼 대상을 AnyCPU로 남겨두고 싶습니다.
다른 프로젝트 빌드를 32 비트로 추가하고 AnyCPU EXE를 어셈블리로로드하고 Main에서 Main을 실행하는 것이 좋습니다. –
프로세스가 시작된 후 디버거를 연결하면 어떻게됩니까? –