Wix: установить исполняемый файл - PullRequest
0 голосов
/ 17 февраля 2012

Я новичок в WiX и пытаюсь создать установщик для моего приложения.Остальные вещи работают нормально, но я застрял в одной точке.Мне нужно распаковать файл после его копирования в папку Program Files.Я не уверен, что Windows может сделать это напрямую, поэтому я получил unzip.exe из Интернета, и он прекрасно работает для распаковки.Я скопировал этот файл также в мою папку Program Files.Но как мне разархивировать мой файл там.Я попробовал следующий код, но безрезультатно: -

**

<?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>

**

Может кто-нибудь помочь мне в этом ????

1 Ответ

6 голосов
/ 17 февраля 2012

Это не очень хороший дизайн установщика Windows для установки, а затем извлечения ZIP.Вы должны просто извлечь ZIP в вашей среде dev / build и создать все файлы в установщике.В противном случае вы скрываете все детали установщика Windows и теряете все преимущества, предоставляемые установщиком Windows.

...