2011-02-26 2 views
0

저는 설치 프로그램 프로젝트 msi 출력 중 하나를 편집하는 설치 프로그램 프로젝트에 post build vbs 스크립트를 실행하고 있습니다 (두 개가 있고 디버그 및 릴리스가 있음). 그래서 두 컴퓨터를 동시에 같은 컴퓨터에 둘 다 설치할 수 있습니다.편집 된 버전과 편집되지 않은 버전이 완전히 다른 두 개의 제품으로 간주되기 위해 msi 파일에 필요한 최소 편집 수는 얼마입니까?

표 : 지금까지 편집하고있어 여기에

이의 바로 가기를 속성 : (편집 바탕 화면과 시작 메뉴 바로 가기)의 이름을

표 : 부동산, 등록 정보 : 제품명, 제품 코드, UpgradeCode

REINSTALLMODE = amus를 두 버전의 'property'테이블에 추가했습니다.

문제는 편집 된 msi가 편집되지 않은 msi의 바로 가기와 파일을 삭제한다는 것입니다. 그러나 원본 msi는 편집되지 않은 msi 파일을 덮어 쓰지 않습니다.

의견이 있으십니까?

감사합니다.

Isaac

답변

0

나는 두 개의 다른 장소에서 upgradecode를 교체해야한다는 것을 알게되었습니다.

속성 테이블에는 업그레이드 코드가 있으며 업그레이드 테이블에는 upgradecode가 있습니다. 조금 어리석은 곳이 두 군데에 있어야합니다 ...

+2

귀하의 경우 어리석은 일이지만 단일 .msi가 여러 개의 업그레이드 테이블 레코드를 추가하는 것만으로 두 개의 서로 다른 제품 라인을 업그레이드하고 병합 할 수 있습니다. –

+0

은 더 이상 어리석은 것처럼 보이지 않습니다. 나를 계몽 해 주셔서 감사합니다. –

0

모든 MSI 파일에는 설치 방법을 정의하는 GUID가 있습니다.

MSI 파일의 원본 GUID가 다른 경우 다른 제품으로 간주됩니다.

msi를 만들기 위해 사용하는 스크립트를 더 많이 모르는 상태에서 나는 더 이상 도움을 줄 수 없으며 정확히 수행 할 작업을 말할 수는 없지만 이것이 도움이되기를 바랍니다.

+0

글쎄,이 ORCA 프로그램을 열면 msi를 열고 데이터베이스를 볼 수 있습니다. 두 개의 다른 GUID, productcode 및 upgradecode를 변경했습니다. 그래서 거기에 세 번째 guid가 바뀔 거라는 말입니까? –

관련 문제