대상 x86 설치 프로그램과 함께 32 비트 C# 응용 프로그램이 있습니다. 이 응용 프로그램은 x64 시스템에서 아무런 문제없이 실행할 수 있습니다. 그러나 소프트웨어에 통합 된 공급 업체의 타사 하드웨어는 이제 x64 시스템에 설치할 때마다 64 비트 DLL을 사용해야합니다.32 비트 C# 응용 프로그램에서 64 비트 DLL을 활용하는 방법
현재 32 비트 DLL과 64 비트 DLL을 모두 프로젝트에 배치했습니다. 그러나 대상 x86 설치 프로그램은 분명히 64 비트 DLL을 좋아하지 않습니다.
64 비트 DLL 및/또는 32 비트 DLL을 배포하고 하나의 설치 프로그램 프로젝트 만 가질 수있는 솔루션을 만들 수 있습니까? (필자는 고급 설치 프로그램이라는 타사 소프트웨어를 살펴 보았지만 필요한 해결책을 얻는 데 도움이되는지 확실하지 않습니다)
일반 설치 프로그램 프로젝트를 만들 수 있습니까?
참고 : 다시 정의하지 않으려는 자동 업데이트 프로세스가 있으므로 두 설치 프로그램 (x86 대 x64) 배포는 적합하지 않습니다. 하나의 MSI 파일을 유지 관리하는 것이 중요합니다.
감사합니다. http://www.advancedinstaller.com/user-guide/qa-OS-dependent-install.html
을 또한, 당신이 필요로하는 같은 이름의 DLL의 두 가지 버전이있는 경우 :
NSIS에서이를 수행 할 수 있습니다. – leppie
여기 실제 문제는 x86 응용 프로그램에서 x64 DLL을 사용할 수 없다는 것입니다. –
32 비트 프로세스에서 64 비트 DLL을 사용할 수 없으며 그 반대의 경우도 마찬가지입니다. 이는 부분적으로 주소 공간을 변환 할 방법이 없기 때문입니다. [자세한 내용은 Raymond Chen 블로그의이 게시물을 참조하십시오 (http://blogs.msdn.com/b/oldnewthing/archive/2008/10/20/9006720.aspx). 64 비트와 32 비트를 혼합하려면 두 가지 프로세스와 일종의 프로세스 간 통신이 필요합니다. –