문제

중요한 세부 사항을 벗어나면 사과 드리겠습니다.

새 버전의 소프트웨어 (및 모든 구성 요소)를 새롭게 설치하기 전에 제거 해야하는 업그레이드를 시도하고 있습니다.

나는 세부 사항으로 당신을 지루하게하는 것을 피하려고 노력하고 '전형적인'설치를하는 경우 모든 것이 계획된 것으로 간주됩니다. 고급 설치를 선택한 경우 (모든 사용자를 위해 설치를 지정하고 위치 등을 설치하십시오.) '이전 버전 제거'단계를 모두 건너 뛰는 것 같습니다.

지금까지 다음을 수행했습니다 :

다른 StackOverflow 질문의 조언과 일치하도록 My UpgradeVersion 태그를

- 확인 된 'oldVersionbeingupgraded'속성이 올바르게 설정됩니다

- 업그레이드 코드 / ID가 동일하고, 버전 번호가 순차적 인 경우 (1.0.8에서 1.0.10까지 업그레이드) - '일반적인'설치가 올바르게 작동합니다!

- Wix-- 항상 이전 버전을 덮어 씁니다. 다음을 따랐습니다 : http://wix.sourceforge.net/manual-wix3/ major_upgrade.htm

- Msiexec을 수동으로 구현하여 Msiexec을 수동으로 구현하여 제품 ID로 이전 버전을 제거함으로써 (이미 무언가를 설치하기 때문에 실패했습니다.

내 제품 / 업그레이드 섹션은 다음과 같습니다.

<Product Id="GUID1" UpgradeCode="GUID2" Version="1.0.10.0">
    <Package Compressed="yes" InstallerVersion="200"/>
    <MajorUpgrade Schedule="afterInstallInitialize" 
      DowngradeErrorMessage="Another version of [ProductName] is already installed."/>
    <Upgrade Id="GUID2">
        <UpgradeVersion Minimum="1.0.10" OnlyDetect="yes"
             Property="NEWERVERSIONDETECTED" />
        <UpgradeVersion Maximum="1.0.10" IncludeMaximum="no" 
             Property="PREVIOUSVERSIONINSTALLED" />
    </Upgrade>
.

저는 Wix Newbie입니다. 그래서 나는 내 문제를 설명하는 동안 중요한 세부 사항을 간과 할 수 있습니다. 내가 중요한 것을 포함시키기 위해 소홀히 한 경우 알려 주시기 바랍니다.

제공 할 수있는 모든 입력에 미리 감사드립니다.

도움이 되었습니까?

해결책

내가 한 것처럼 당신이 같은 한계로 들리는 것처럼 들리네, 이 질문 .업그레이드에서 설치 범위 ( "사용자 당"또는 컴퓨터 당 "또는" "당")는 변경할 수 없습니다.

Windows Installer에서는이 주위에 간단한 방법이 없습니다.이전 버전을 설치 제거한 다음 새 버전의 설치를 시작하는 별도의 부트 스트 래퍼 EXE 만 만들 수 있습니다.

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