2013-06-26 2 views
2

WiX를 사용하여 MSI 설치 프로그램을 만들고 있습니다. 최종 사용자의 컴퓨터에 등록해야하는 .ocx 및 .dll 파일이 여러 개 있습니다. 설치시 이러한 파일을 포함하면 regsvr32 명령이 실행 된 것처럼 자동으로 등록됩니까?파일을 설치하면 자동으로 등록됩니까?

답변

3

아니요, Directory, Component 및 File 요소는 파일을 폴더로 복사하는 것을 나타냅니다. COM은 ProgId, Class, TypeLib 및 AppId 테이블과 같은 COM 요소로 표현됩니다.

이 정보를 알고 있으면 수동으로 제작할 수 있습니다. 그렇지 않으면 Heat 유틸리티를 사용하여 수확 할 수 있습니다. Heat는 등록을 시뮬레이트하고이를 WXS 코드로 추출/변환합니다.

Regsvr32를 사용하여 DllRegister 서버 (또는 Gacutil에서 COMSearch assemlby 등을 호출)를 사용하면 Windows Installer 환경에서 반 패턴으로 간주됩니다. 이는 깨지기 쉽고 처리 과정이 아니며 선언적이지 않기 때문에 롤백하거나 복원력을 모니터링 할 수 없기 때문입니다.

Harvest Tool (Heat)

+0

설명해 주셔서 감사합니다. 나는 실제로 전에 heat.exe 페이지를 보았지만 어떤 방법을 사용할 지 알 수 없었다. "Harvest VB6 COM 구성 요소"메서드를 사용하여 모든 .dll 및 .ocx 파일을 등록하거나 그냥 "파일 수집"방법을 사용해야합니까? – user2437443

+0

내가 만든 사용자 지정 winforms 응용 프로그램을 사용합니다. 파일 시스템 감시자를 폴더에 놓고 변경 사항이있을 때마다 전화를 겁니다. 그런 다음 출력 WXS를 XDocument로 구문 분석하고 UI에 색이 지정된 XML로 표시합니다. 이렇게하면 설치 프로그램을 모델링 할 때 XML이 다시 작성되는 것을 볼 수 있습니다. –

+0

열 dir c : \ folder-out c : \ src \ components.wxs는 정상적으로 작동해야합니다. –