Pregunta

Soy nuevo en WIX y he estado tratando de crear un instalador para mi aplicación. El resto de las cosas funcionan bien, pero estoy atrapado en un punto. Necesito descomponer un archivo una vez que se copie en la carpeta de archivos de programa. No estoy seguro de si Windows puede hacerlo directamente, así que obtuve un unzip.exe de Internet y está funcionando bien para desactivar. He copiado ese archivo también en la carpeta de mis archivos de programa. Pero, ¿cómo descompongo mi archivo allí? Probé el siguiente código pero sin resultado:-

**

<?xml version='1.0' encoding='windows-1252'?>
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
  <Product Name='Test' Id='xxxxxx' UpgradeCode='xxxxxxx'
    Language='1033' Codepage='1252' Version='0.1.3' Manufacturer=''>
    <Package Id='*' Keywords='Installer' Description=""
      Comments='' Manufacturer=''
      InstallerVersion='100' Languages='1033' Compressed='yes' SummaryCodepage='1252' />

    <Media Id='1' Cabinet='Sample.cab' EmbedCab='yes' DiskPrompt="CD-ROM #1" />
    <Property Id='DiskPrompt' Value="Designer Installation [1]" />
    <Directory Id='TARGETDIR' Name='SourceDir'>
      <Directory Id='ProgramFilesFolder' Name='PFiles'>
        <Directory Id='Test' Name='Test'>

                  <Component Id='unzip' Guid='xxxxxxx'>
              <File Id='unzipexe' Name='unzip.exe' DiskId='1' Source='unzip.exe' KeyPath='yes' />
          </Component>
                  <Component Id='sdk' Guid='xxxxxxxx'>
              <File Id='SDK' Name='sdk.zip' DiskId='1' Source='sdk.zip' KeyPath='yes' />
          </Component>
                  <Component Id='testlogger' Guid='xxxxxxx'>
              <File Id='TestLog' Name='Test.log' DiskId='1' Source='Test.log' KeyPath='yes' />
            </Component>

        </Directory>
      </Directory>
      <Directory Id="DesktopFolder" Name="Desktop" />
    </Directory>
    <Feature Id='Complete' Level='1'>
      <ComponentRef Id='unzip' />
          <ComponentRef Id='sdk' />
          <ComponentRef Id='testlogger' />
    </Feature>

    <Property Id='Unzipper'>TARGETDIR\ProgramFilesFolder\Test\unzip.exe</Property>
    <CustomAction Id='zipFile' Property='Unzipper' ExeCommand='sdk.zip' Return='asyncWait'/>
    <InstallExecuteSequence>
        <Custom Action='zipFile' After='InstallFinalize'>NOT Installed</Custom>
    </InstallExecuteSequence>
  </Product>
</Wix>

**

¿¿¿¿Puede alguien ayudarme en esto????

¿Fue útil?

Solución

Este no es un buen diseño de instalación de Windows para instalar y luego extraer un zip. Simplemente debe extraer el zip en su entorno de desarrollo/compilación y autor todos los archivos en el instalador. De lo contrario, está ocultando todos los detalles del instalador de Windows y perdiendo todos los beneficios que proporciona Windows Installer.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top