2012-08-29 4 views
0

Windows 설치 프로그램 스크립트를 만들 때 자신의 폴더에 두 가지 기능을 설치했습니다.MSI에서 동일한 병합 모듈을 여러 번 사용하는 올바른 방법은 무엇입니까?

나는 이러한 폴더 모두에 병합 모듈을 실행합니다. 그러나 Windows Installer는 응용 프로그램 폴더에 대해서만 설치할 수 있도록 병합 모듈의 단일 복사본 만 허용합니다.

는이 작업을 수행하고 있지 않은 경우, 해결 방법이있을 수 있습니까?

감사합니다.

답변

1

병합 모듈은 별도의 MSI 파일로 제공 전제 조건을 사용하는 것이 더 곤란하다. 어떤 병합 모듈을 언급하고 있습니까?

+0

병합 모듈을 사용하면 단일 MSI를 제공하여 제품을 설치할 수 있습니다. 별도의 MSI에서 전제 조건이 있으면 부트 스트 래퍼를 사용해야하며 설치가 단일 설치 트라 싱션으로 중지됩니다. –

1

병합 모듈은 두 번 하나의 MSI로 가져올 수 없습니다.

더 좋은 방법은 하나 개의 공유 폴더에 병합 모듈의 구성 요소를 설치하는 것입니다, 모두 당신의 구성 요소는 거기에서 그것을 사용합니다.

또 다른 옵션은 CopyFile 요소를 추가하고 병합 모듈이 2 구성 요소의 폴더에 설치 모든 것을 복사하는 것입니다. 그러나 공유 폴더을 사용하는 것이 좋습니다. 왜 파일을 복제해야합니까? 나중에 업데이트 후에 공유 구성 요소의 버전이 달라질 수 있으며 이로 인해 문제가 발생할 수 있습니다.

+0

각 기능 (제품군의 응용 프로그램)이 자체 폴더에 있고 각 모듈의 병합 파일이 필요하기 때문에 중복이 필요합니다. 응용 프로그램은 .NET 응용 프로그램입니다. –

+0

나는 병합 모듈에서 파일을 추출하고 설치 프로그램에서 두 번씩 (각 응용 프로그램 폴더의 복사본) 실험하고 있습니다. 이것이 어디로 가는지 보자 ... –

+0

.NET에서 경험이 없다. 그러나 오랫동안 Win32 용으로 프로그래밍되었다. 그리고 두 DLL (하나의 제품군)이이 DLL을 한 폴더에서 공유 할 수없는 이유를 이해할 수 없습니다. DLL의 핵심은 복제하기보다는 코드를 공유하는 것입니다. (예, DLL 지옥에 대해 알고 있지만이 경우에는 세 가지 구성 요소를 모두 제어 할 수 있으며 왜 두 개의 복사본이 필요한지 알 수 없습니다.) –

관련 문제