Δημιουργία "MSI" του Windows Installer με χρήση του WiX part2

Ημερομηνία δημιουργίας σελίδας :

Αρχικά

Την τελευταία φορά, ετοιμάσαμε τα απαραίτητα αρχεία και στήσαμε το έργο. Αυτή τη φορά, επεξεργαστείτε το "Product.wxs" και κάντε διάφορες ρυθμίσεις του προγράμματος εγκατάστασης.

Επεξεργασία ρυθμίσεων εγκατάστασης (Product.wxs)

Τα περιεχόμενα του αρχείου Product.wxs περιγράφονται σε μορφή XML. Υπάρχουν ορισμένες παράμετροι, αλλά πρώτα θα κάνουμε τις ελάχιστες ρυθμίσεις για να βεβαιωθούμε ότι το πρόγραμμα εγκατάστασης μπορεί να δημιουργηθεί. Εάν θέλετε να το ρυθμίσετε με περισσότερες λεπτομέρειες, ανατρέξτε σε άλλο άρθρο ή στον επίσημο ιστότοπο.

Κατά τη στιγμή της δημιουργίας του έργου, ο κώδικας έχει την εξής εμφάνιση:

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

Ακολουθούν ορισμένα πράγματα που πρέπει να αλλάξετε: Προσθέστε ετικέτες και χαρακτηριστικά που δεν υπάρχουν.

Wix/Προϊόν/@Id

Ορίστε το GUID που προσδιορίζει την εφαρμογή.

Υπάρχουν πολλά εργαλεία για τη δημιουργία GUID, αλλά είναι γρήγορο να χρησιμοποιήσετε τα εργαλεία που συνοδεύουν το Visual Studio. Επιλέξτε το μενού "Εργαλεία" και "Δημιουργία GUID".

image

Αποκτήστε έναν 36ψήφιο κωδικό, συμπεριλαμβανομένης μιας παύλας, και ρυθμίστε τον σε Wix/Προϊόν/@Id.

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

Wix/Προϊόν/@Name

Αυτό είναι το όνομα της εφαρμογής που εμφανίζεται σε κάθε τμήμα της οθόνης του προγράμματος εγκατάστασης. Μπορεί επίσης να είναι το όνομα που εμφανίζεται στη λίστα Προσθαφαίρεση προγραμμάτων.

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

image

image

Wix/Προϊόν/@Manufacturer

Εισαγάγετε το όνομα του κατασκευαστή. Εμφανίζεται ως συντάκτης του προγράμματος εγκατάστασης ή ως εκδότης της λίστας προγραμμάτων.

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

image

image

Wix/Προϊόν/UIRef/@Id

Εισαγάγετε ένα αναγνωριστικό που προσδιορίζει ποια οθόνη θα εμφανίζεται στον οδηγό εγκατάστασης. Αυτή τη φορά, δεδομένου ότι είναι η ελάχιστη ρύθμιση παραμέτρων για την εμφάνιση και την εγκατάσταση μόνο της άδειας χρήσης, καθορίζεται το "WixUI_Minimal".

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

Πιστεύω ότι ο ακόλουθος ιστότοπος θα είναι χρήσιμος για το είδος του χαρακτηρισμού που μπορεί να γίνει.

Χρήση του συνόλου διαλόγου WixUI

Wix/Προϊόν/WixVariable/*

Καθορίζει το αρχείο που θα χρησιμοποιηθεί στο περιβάλλον εργασίας χρήστη του οδηγού. Η ελάχιστη ρύθμιση παραμέτρων χρησιμοποιεί τρία αρχεία: Η τιμή του αναγνωριστικού είναι σταθερή και η τιμή είναι το όνομα αρχείου.

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

Εικονίδιο εφαρμογής εγκατάστασης

Χρησιμοποιείται για εικονίδια εφαρμογών που εμφανίζονται στο "Προσθήκη και κατάργηση προγραμμάτων", κλπ.

Στο στοιχείο "SourceFile" του στοιχείου Icon, καθορίστε το αρχείο ico ως σχετική διαδρομή από το φάκελο έργου.

"Αναγνωριστικό ιδιότητας="ARPPRODUCTICON" είναι ο ορισμός συσχέτισης του εικονιδίου.

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

Wix/Fragment (ρύθμιση παραμέτρων φακέλου αρχείου)

Ορίζει τη ρύθμιση παραμέτρων του φακέλου που θα εγκατασταθεί. Αρχικά, θα τοποθετήσετε επίσης αρχεία, αλλά θα δημιουργήσετε πρώτα μόνο φακέλους.

Η τιμή "Όνομα" που έχει οριστεί σε "Id="ProgramMenuDir" είναι το όνομα του φακέλου που τοποθετείται στη συντόμευση μενού έναρξης. Στήσε και guids.

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

Προσθήκη αρχείων εγκατάστασης

Μπορείτε επίσης να το προσθέσετε σε ένα αρχείο Product.wxs με το χέρι. Δεδομένου ότι απαιτείται ένα GUID για ένα αρχείο, είναι δύσκολο να εργαστείτε με περισσότερα αρχεία. Έτσι, για να προσθέσετε αρχεία, χρησιμοποιήστε το WixEdit για να τα προσθέσετε.

Εκτοξεύστε το WixEdit.

image

Ανοίξτε το αρχείο Product.wxs.

image

image

Επιλέξτε Αρχεία από το εικονίδιο στα αριστερά. Διαγράψτε τους φακέλους κάτω από το ProgramFilesFolder.

image

Κάντε δεξί κλικ στο φάκελο ProgramFilesFolder και επιλέξτε Εισαγωγή φακέλου.

image

Επιλέξτε το φάκελο όπου θέλετε να εγκαταστήσετε τα αρχεία.

image

Ένα σύνολο αρχείων προστίθεται στο δέντρο.

image

Για να συσχετίσετε με άλλες παραμέτρους, επιλέξτε τον πρόσθετο φάκελο και ορίστε το "Id" πίσω στο "INSTALLFOLDER".

image

Δημιουργήστε μια συντόμευση για το μενού "Έναρξη". Επιλέξτε "Δημιουργία" και "Συντόμευση" από το μενού δεξιού κλικ του αρχείου exe.

image

Όταν προστεθεί η συντόμευση, επιλέξτε την και κάντε δεξί κλικ στο κενό για να προσθέσετε την ιδιότητα.

image

Προσθέστε τις ακόλουθες παραμέτρους: (Αλλάξτε το μοναδικό όνομα για να ταιριάζει με το πρόγραμμα.)

Τιμή χαρακτηριστικού
Αναγνωριστικό ΜΙΚΡΉς ΔΙΆΡΚΕΙΑς ΕΠΊΘΕΣΗ. EXE_shortcut
Όνομα Μικρή δοκιμή saber
Κατάλογος ΠρόγραμμαΜεντουντίρ
Εργατομετρητής ΕΓΚΑΤΆΣΤΑΣΗDIR
Εικόνα Ο ΛΙΤΛ ΣΆΙΟΡ. ΙΚΟ
Εικονίδιο Ίντεξ 0
Διαφημίζω Ναι

image

Στη συνέχεια, επιλέξτε την καρτέλα "Δυνατότητα", κάντε δεξί κλικ στο "ProductFeature" και επιλέξτε Επιλογή στοιχείων για προσθήκη.

image

Επιλέξτε όλα.

image

Πρόσθεσαν.

image

Σώζω.

image

Το Product.wxs πρέπει να έχει την εξής εμφάνιση:

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

Δημιουργία και εκτέλεση επιβεβαίωσης

Κάντε τη ρύθμιση παραμέτρων λύσης "Release" στο Visual Studio.

image

Ξεκινήστε να χτίζετε από τη Λύση Δόμησης.

image

Όταν το κτίριο είναι επιτυχής, δημιουργείται ένα αρχείο msi στο φάκελο "bin\Release".

image

Εάν προσπαθήσετε να το εκτελέσετε, θα ξεκινήσει το πρόγραμμα εγκατάστασης.

image

Όταν ολοκληρωθεί η εγκατάσταση, θα δημιουργηθεί μια συντόμευση στο μενού "Έναρξη".

image

Το αρχείο τοποθετείται στο φάκελο Αρχεία προγράμματος (x86).

image

Η εφαρμογή εμφανίζεται επίσης στο "Προγράμματα και συναρτήσεις".

image

Εκτελέστε την εφαρμογή και βεβαιωθείτε ότι λειτουργεί σωστά.

image

Περίληψη

Εδώ έχουμε περιγράψει τα βήματα για τη δημιουργία ενός προγράμματος εγκατάστασης MSI χρησιμοποιώντας το Visual Studio και το WiX. Θα ήθελα να εξηγήσω τις λεπτομερείς ρυθμίσεις σε ένα ξεχωριστό άρθρο.