문제

경우에 따라 장치를 사용하는 응용 프로그램이 있습니다 (즉, 프린터). 기본적으로 한 사무실 에서이 프린터가 사용되며 다른 사무실에서는이 프린터가 사용되지 않습니다.

프린터를 사용하는 기능은 응용 프로그램 코드에 앉아 있으며 프린터와 통신하는 DLL은 코드에 참조됩니다. 따라서 DLL은 설치 .msi 패키지의 일부입니다.

그러나 전제 조건 (제조업체가 단일 설치 EXE로 제공 한 프린터의 많은 드라이버)이 설치되지 않은 경우 설치 중에 이러한 DLL을 등록 할 수 없습니다. 드라이버 설치 프로그램의 크기는 약 50m입니다.

프린터를 사용하지 않는 사무실의 설치 패키지에 추가 50m 파일을 포함시키고 싶지 않습니다. 문제에 대한 가능한 해결 방법은 무엇입니까?

궁극적으로 설치 중에 이러한 DLL 등록을 어떻게 든 건너 뛰는 옵션을 원합니다. 그러나 나는 이것에 접근하는 방법을 모른다.

코드에서 조건부 편집을 할 수 있다고 생각합니다. 그러나 여기에는 나머지 애플리케이션 코드에서 이러한 유형의 프린터와 대화하는 코드를 완전히 분리하는 상당한 양의 작업이 포함됩니다.

가능한 솔루션이 있습니까?

도움이 되었습니까?

해결책

구성 요소를 조건부로 설치/등록 해야하는 DLL을 그룹화하십시오. 그런 다음 MSI에서 요소 테이블, 조건 열을 사용하여 설정할 속성에 따라 다릅니다. 당신의 MSI에서 로케이터 테이블, 전제 조건을 찾고 속성을 설정하도록 행을 구성하십시오.

읽어서 이것에 대해 자세히 알아볼 수 있습니다.

http://msdn.microsoft.com/en-us/library/aa371564(vs.85).aspx

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top