Sukurkite "Windows Installer" "MSI" naudodami "WiX" 2 dalį

Puslapio sukūrimo data :

Iš pradžių

Paskutinį kartą mes paruošėme reikiamus failus ir sukūrėme projektą. Šį kartą redaguokite "Product.wxs" ir atlikite įvairius diegimo programos nustatymus.

Diegimo parametrų redagavimas (Product.wxs)

Product.wxs failo turinys aprašytas XML formatu. Yra keletas parametrų, tačiau pirmiausia padarysime minimalius nustatymus, kad įsitikintume, jog diegimo programa gali būti sukurta. Jei norite jį nustatyti išsamiau, skaitykite kitą straipsnį arba oficialią svetainę.

Projekto kūrimo metu kodas atrodo taip:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Product Id="*" Name="SetupLittleSaviorTrial_x86" Language="1033" Version="1.0.0.0" Manufacturer="" UpgradeCode="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX">
    <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />

    <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
    <MediaTemplate />

    <Feature Id="ProductFeature" Title="SetupLittleSaviorTrial_x86" Level="1">
      <ComponentGroupRef Id="ProductComponents" />
    </Feature>
  </Product>

  <Fragment>
    <Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="ProgramFilesFolder">
        <Directory Id="INSTALLFOLDER" Name="SetupLittleSaviorTrial_x86" />
      </Directory>
    </Directory>
  </Fragment>

  <Fragment>
    <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
      <!-- TODO: Remove the comments around this Component element and the ComponentRef below in order to add resources to this installer. -->
      <!-- <Component Id="ProductComponent"> -->
      <!-- TODO: Insert files, registry keys, and other resources here. -->
      <!-- </Component> -->
    </ComponentGroup>
  </Fragment>
</Wix>

Štai keletas dalykų, kuriuos reikia pakeisti: Įtraukite žymes ir atributus, kurių nėra.

Wix /Produktas/@Id

Nustatykite guidą, kuris identifikuoja taikomąją programą.

Yra daug įrankių GUID generuoti, tačiau greitai naudoti įrankius, kurie pateikiami su Visual Studio. Pasirinkite meniu "Įrankiai" ir "Sukurti GUID".

image

Gaukite 36 skaitmenų kodą, įskaitant brūkšnelį, ir nustatykite jį į Wix/Product/@Id.

<Wix>
  <Product Id="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" />

Wix / Produktas / @Name

Tai programos pavadinimas, rodomas kiekvienoje diegimo programos ekrano dalyje. Tai taip pat gali būti pavadinimas, rodomas sąraše Pridėti ir šalinti programas.

<Wix>
  <Product Name="リトルセイバー 体験版" />

image

image

Wix /Produktas/@Manufacturer

Įveskite gamintojo pavadinimą. Jis rodomas kaip diegimo programos autorius arba programų sąrašo leidėjas.

<Wix>
  <Product Manufacturer="ソーサリーフォース">

image

image

Wix / Produktas / UIRef / @Id

Įveskite ID, identifikuojantį, kokį ekraną rodyti diegimo vedlyje. Šį kartą, kadangi tai yra minimali konfigūracija rodyti ir įdiegti tik licenciją, nurodoma "WixUI_Minimal".

<Wix>
  <Product>
    <UIRef Id="WixUI_Minimal" />

Manau, kad ši svetainė bus naudinga, kokios paskyrimo galima padaryti.

"WixUI" dialogo lango naudojimas

Wix/Produktas/WixVariable/*

Nurodo failą, kuris bus naudojamas vedlio vartotojo sąsajoje. Minimali konfigūracija naudoja tris failus: ID reikšmė yra fiksuota, o reikšmė yra failo vardas.

<Wix>
  <Product>
    <WixVariable Id="WixUILicenseRtf" Value="license.rtf" />
    <WixVariable Id="WixUIDialogBmp" Value="dialog.bmp" />
    <WixVariable Id="WixUIBannerBmp" Value="banner.bmp" />

Diegimo programos piktograma

Jis naudojamas programų piktogramoms, kurios rodomos "Pridėti ir pašalinti programas" ir kt.

Piktogramos elemento "SourceFile" nurodykite ico failą kaip santykinį kelią iš projekto aplanko.

"Ypatybės ID="ARPPRODUCTICON" yra piktogramos susiejimo apibrėžimas.

<Wix>
  <Product>
    <Icon Id="LITTLESAVIOR.ICO" SourceFile="LittleSaviorTrial\LittleSavior.ico" />
    <Property Id="ARPPRODUCTICON" Value="LITTLESAVIOR.ICO" />

Wix/Fragment (failo aplanko konfigūracija)

Nustato diegtinai aplanko konfigūraciją. Iš pradžių taip pat padėsite failus, bet pirmiausia sukursite tik aplankus.

Reikšmė "Pavadinimas" nustatyta kaip "Id = "ProgramMenuDir" yra aplanko pavadinimas dedamas į meniu Pradėti nuorodą. Nustatyti guids taip pat.

<Wix>
  <Fragment>
    <Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="ProgramFilesFolder">
        <Directory Id="INSTALLFOLDER" Name="SetupLittleSaviorTrial_x86" />
      </Directory>
      <Directory Id="ProgramMenuFolder">
        <Directory Id="ProgramMenuDir" Name="リトルセイバー 体験版">
          <Component Id="ProgramMenuDir" Guid="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX">
            <RemoveFolder Id="ProgramMenuDir" On="uninstall" />
            <RegistryValue Root="HKCU" Key="Software\[Manufacturer]\[ProductName]" Type="string" Value="" KeyPath="yes" />
          </Component>
        </Directory>
      </Directory>
    </Directory>
  </Fragment>

Diegimo failų įtraukimas

Taip pat galite pridėti jį prie Product.wxs failo ranka. Kadangi failui reikalingas GUID, sunku dirbti su daugiau failų. Taigi, norėdami pridėti failus, naudokite "WixEdit", kad juos pridėtumėte.

Paleiskite "WixEdit".

image

Atidarykite failą Product.wxs.

image

image

Kairėje pusėje esaoje piktogramoje pasirinkite Failai. Panaikinkite aplankus žemiau ProgramFilesFolder.

image

Dešiniuoju pelės mygtuku spustelėkite aplanką ProgramFilesFolder ir pasirinkite Importuoti aplanką.

image

Pasirinkite aplanką, kuriame norite įdiegti failus.

image

Failų rinkinys įtraukiamas į medį.

image

Norėdami susieti su kitais parametrais, pasirinkite pridėtą aplanką ir nustatykite "Id" atgal į "INSTALLFOLDER".

image

Sukurkite meniu Pradėti nuorodą. pasirinkite "Naujas" ir "Nuoroda" iš dešiniojo pelės mygtuko meniu exe failą.

image

Įtraukę nuorodą, pažymėkite ją ir dešiniuoju pelės mygtuku spustelėkite tuščią, kad įtrauktumėte ypatybę.

image

Įtraukite šiuos parametrus: (Pakeiskite unikalų pavadinimą, kad jis atitiktų programą.)

Atributo vertė
Id LITTLESAVIORTRIAL. EXE_shortcut
Vardas, pavadinimas Little Saber teismo
Katalogas ProgramaMenuDir
Darbokryptis INSTALLDIR
Ikona LITTLESAVIOR. ICO
IconIndex 0
Reklamuoti taip

image

Tada pasirinkite skirtuką "Funkcija", dešiniuoju pelės mygtuku spustelėkite "ProductFeature" ir pasirinkite Pasirinkti komponentus, kad pridėtumėte.

image

Pažymėkite viską.

image

Pridėta.

image

Taupyti.

image

Product.wxs turėtų atrodyti maždaug taip:

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Product Id="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" Name="リトルセイバー 体験版" Language="1033" Version="1.0.0.0" Manufacturer="ソーサリーフォース" UpgradeCode="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX">
    <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
    <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
    <MediaTemplate />
    <UIRef Id="WixUI_Minimal" />
    <WixVariable Id="WixUILicenseRtf" Value="license.rtf" />
    <WixVariable Id="WixUIDialogBmp" Value="dialog.bmp" />
    <WixVariable Id="WixUIBannerBmp" Value="banner.bmp" />
    <Icon Id="LITTLESAVIOR.ICO" SourceFile="LittleSaviorTrial\LittleSavior.ico" />
    <Property Id="ARPPRODUCTICON" Value="LITTLESAVIOR.ICO" />
    <Feature Id="ProductFeature" Title="SetupLittleSaviorTrial_x86" Level="1">
      <ComponentGroupRef Id="ProductComponents" />
      <ComponentRef Id="LITTLESAVIOR.ICO" />
      <ComponentRef Id="LITTLESAVIORTRIAL.EXE" />
      <ComponentRef Id="LITTLESAVIORTRIAL.EXE.CONFIG" />
      <ComponentRef Id="ProgramMenuDir" />
    </Feature>
    <UI />
  </Product>
  <Fragment>
    <Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="ProgramFilesFolder">
        <Directory Id="INSTALLFOLDER" Name="LittleSaviorTrial">
          <Component Id="LITTLESAVIOR.ICO" DiskId="1" Guid="0B4DD82C-C6EF-4299-8EAB-4F9BB35FD952">
            <File Id="LITTLESAVIOR.ICO" Name="LittleSavior.ico" Source="LittleSaviorTrial\LittleSavior.ico" />
          </Component>
          <Component Id="LITTLESAVIORTRIAL.EXE" DiskId="1" Guid="8D805936-A25E-4DA6-9A0A-A5BDB2AD768D">
            <File Id="LITTLESAVIORTRIAL.EXE" Name="LittleSaviorTrial.exe" Source="LittleSaviorTrial\LittleSaviorTrial.exe" KeyPath="yes">
              <Shortcut Id="LITTLESAVIORTRIAL.EXE_shortcut" Name="リトルセイバー 体験版" Directory="ProgramMenuDir" WorkingDirectory="INSTALLDIR" Icon="LITTLESAVIOR.ICO" IconIndex="0" Advertise="yes" />
            </File>
          </Component>
          <Component Id="LITTLESAVIORTRIAL.EXE.CONFIG" DiskId="1" Guid="790C427A-A72C-4444-ACD6-ECF32AA788AD">
            <File Id="LITTLESAVIORTRIAL.EXE.CONFIG" Name="LittleSaviorTrial.exe.config" Source="LittleSaviorTrial\LittleSaviorTrial.exe.config" />
          </Component>
        </Directory>
      </Directory>
      <Directory Id="ProgramMenuFolder">
        <Directory Id="ProgramMenuDir" Name="リトルセイバー 体験版">
          <Component Id="ProgramMenuDir" Guid="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX">
            <RemoveFolder Id="ProgramMenuDir" On="uninstall" />
            <RegistryValue Root="HKCU" Key="Software\[Manufacturer]\[ProductName]" Type="string" Value="" KeyPath="yes" />
          </Component>
        </Directory>
      </Directory>
    </Directory>
  </Fragment>
  <Fragment>
    <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
    </ComponentGroup>
  </Fragment>
</Wix>

Kurti ir vykdyti patvirtinimą

Padarykite sprendimo konfigūraciją "Release" "Visual Studio".

image

Pradėkite kurti iš "Build Solution".

image

Kai pastatas bus sėkmingas, aplanke "bin\Release" bus sugeneruotas msi failas.

image

Jei bandysite jį paleisti, bus paleista diegimo programa.

image

Kai diegimas bus baigtas, meniu Pradėti bus sukurta nuoroda.

image

Failas dedamas į aplanką Programų failai (x86).

image

Programa taip pat rodoma "Programos ir funkcijos".

image

Paleiskite programą ir įsitikinkite, kad ji veikia tinkamai.

image

Suvestinė

Čia aprašėme MSI diegimo programos kūrimo veiksmus naudojant "Visual Studio" ir "WiX". Norėčiau paaiškinti išsamius nustatymus atskirame straipsnyje.