Δημιουργία "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".
Αποκτήστε έναν 36ψήφιο κωδικό, συμπεριλαμβανομένης μιας παύλας, και ρυθμίστε τον σε Wix/Προϊόν/@Id.
<Wix>
<Product Id="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" />
Wix/Προϊόν/@Name
Αυτό είναι το όνομα της εφαρμογής που εμφανίζεται σε κάθε τμήμα της οθόνης του προγράμματος εγκατάστασης. Μπορεί επίσης να είναι το όνομα που εμφανίζεται στη λίστα Προσθαφαίρεση προγραμμάτων.
<Wix>
<Product Name="リトルセイバー 体験版" />
Wix/Προϊόν/@Manufacturer
Εισαγάγετε το όνομα του κατασκευαστή. Εμφανίζεται ως συντάκτης του προγράμματος εγκατάστασης ή ως εκδότης της λίστας προγραμμάτων.
<Wix>
<Product Manufacturer="ソーサリーフォース">
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.
Ανοίξτε το αρχείο Product.wxs.
Επιλέξτε Αρχεία από το εικονίδιο στα αριστερά. Διαγράψτε τους φακέλους κάτω από το ProgramFilesFolder.
Κάντε δεξί κλικ στο φάκελο ProgramFilesFolder και επιλέξτε Εισαγωγή φακέλου.
Επιλέξτε το φάκελο όπου θέλετε να εγκαταστήσετε τα αρχεία.
Ένα σύνολο αρχείων προστίθεται στο δέντρο.
Για να συσχετίσετε με άλλες παραμέτρους, επιλέξτε τον πρόσθετο φάκελο και ορίστε το "Id" πίσω στο "INSTALLFOLDER".
Δημιουργήστε μια συντόμευση για το μενού "Έναρξη". Επιλέξτε "Δημιουργία" και "Συντόμευση" από το μενού δεξιού κλικ του αρχείου exe.
Όταν προστεθεί η συντόμευση, επιλέξτε την και κάντε δεξί κλικ στο κενό για να προσθέσετε την ιδιότητα.
Προσθέστε τις ακόλουθες παραμέτρους: (Αλλάξτε το μοναδικό όνομα για να ταιριάζει με το πρόγραμμα.)
Τιμή χαρακτηριστικού | |
---|---|
Αναγνωριστικό | ΜΙΚΡΉς ΔΙΆΡΚΕΙΑς ΕΠΊΘΕΣΗ. EXE_shortcut |
Όνομα | Μικρή δοκιμή saber |
Κατάλογος | ΠρόγραμμαΜεντουντίρ |
Εργατομετρητής | ΕΓΚΑΤΆΣΤΑΣΗDIR |
Εικόνα | Ο ΛΙΤΛ ΣΆΙΟΡ. ΙΚΟ |
Εικονίδιο Ίντεξ | 0 |
Διαφημίζω | Ναι |
Στη συνέχεια, επιλέξτε την καρτέλα "Δυνατότητα", κάντε δεξί κλικ στο "ProductFeature" και επιλέξτε Επιλογή στοιχείων για προσθήκη.
Επιλέξτε όλα.
Πρόσθεσαν.
Σώζω.
Το 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.
Ξεκινήστε να χτίζετε από τη Λύση Δόμησης.
Όταν το κτίριο είναι επιτυχής, δημιουργείται ένα αρχείο msi στο φάκελο "bin\Release".
Εάν προσπαθήσετε να το εκτελέσετε, θα ξεκινήσει το πρόγραμμα εγκατάστασης.
Όταν ολοκληρωθεί η εγκατάσταση, θα δημιουργηθεί μια συντόμευση στο μενού "Έναρξη".
Το αρχείο τοποθετείται στο φάκελο Αρχεία προγράμματος (x86).
Η εφαρμογή εμφανίζεται επίσης στο "Προγράμματα και συναρτήσεις".
Εκτελέστε την εφαρμογή και βεβαιωθείτε ότι λειτουργεί σωστά.
Περίληψη
Εδώ έχουμε περιγράψει τα βήματα για τη δημιουργία ενός προγράμματος εγκατάστασης MSI χρησιμοποιώντας το Visual Studio και το WiX. Θα ήθελα να εξηγήσω τις λεπτομερείς ρυθμίσεις σε ένα ξεχωριστό άρθρο.