Uvajanje zaganjalnika s paketom MSI
V upravljanem okolju pride programska oprema v računalnik samo prek uvajanja, ki ga izvaja oddelek IT, in sicer kot podpisan paket Windows Installer. Zaganjalnik aplikacije se zato kot tak paket namesti enkrat; odtlej vsako novo različico aplikacije vsakemu uporabniku prinese sam, ne da bi jo moral oddelek IT znova uvajati.
Pregled rešitve
tools\New-StarterMsi.ps1 zgradi paket iz projektne datoteke in datoteke EXE zaganjalnika. Brez nastavitev
namestitvenega programa je to enak paket kot v prejšnjih različicah:
- za računalnik, v
Program Files (x86)\WKL\<product>, kjer uporabniki ne morejo spremeniti zaganjalnika ali njegove projektne datoteke; - bližnjica v meniju Start za vse uporabnike (z
/RUNCFGsamo, če zaganjalnik projektne datoteke ne bi našel sam); - logotip, ki ga navaja projekt, če je poleg projektne datoteke;
- UpgradeCode, izpeljan iz ključa izdelka, tako da vsak poznejši paket izdelka zamenja prejšnjega;
- podpis, če je naveden certifikat za podpisovanje kode.
Od različice 2.3.0 lahko datoteka <name>.msi.json poleg projektne datoteke določi še več (glejte
Nastavitve namestitvenega programa): paket za posameznega uporabnika poleg paketa za
računalnik ali namesto njega, pogovorna okna v petih jezikih z lastnimi stranmi, katerih vrednosti se zapišejo v
<name>.ini poleg zaganjalnika, licenco, slike in založnikove fragmente WiX. Skript nato zgradi en paket za vsak obseg in jezik.
Izvedba
Wkl.Bootstrapper.exeshranite poleg projektne datoteke, prav tako logotip, če ga projekt navaja.Preverite projektno datoteko in, če obstajajo, nastavitve namestitvenega programa:
Wkl.Bootstrapper.exe /check bootstrapper.json Wkl.Bootstrapper.exe /check bootstrapper.msi.json
Zgradite paket (zahteva ukazno vrstico
wixkompleta WiX Toolset, različice 6 ali novejše):.\tools\New-StarterMsi.ps1 -Project \\server\amed\deploy\bootstrapper.json -Version 1.0.0 ` -CertificateThumbprint <thumbprint of the code signing certificate>
Paketi se zapišejo poleg projektne datoteke (
-OutputFoldernavede drugo mapo); skript izpiše pot do vsakega. Izvorne datoteke za WiX zapiše zaganjalnik, ki pripada skriptu (Wkl.Bootstrapper.exeeno mapo nadtools, različica 2.3.0 ali novejša); starejšega zaganjalnika skript zavrne, ne da bi ga zagnal.- Paket predajte oddelku IT za uvajanje (pravilnik skupine, Intune ali Configuration Manager).
Opombe
- Za vsak paket, ki naj ga oddelek IT uvede, zvišajte
-Version. Windows Installer nameščeni paket zamenja samo z višjo različico. Nov paket potrebujete samo, ko se spremeni zaganjalnik ali projektna datoteka, ne pa za novo različico aplikacije, ki jo zaganjalnik prinese iz vira. - Privzeta različica je
package.versioniz nastavitev namestitvenega programa, sicer različica izdelka datoteke EXE zaganjalnika; če se je spremenila samo projektna datoteka, različico navedite izrecno. - Vrednosti lastnih strani lahko podate brez pogovornih oken:
msiexec /i <package> /qn SERVER=... MODE=...(glejte Nastavitve namestitvenega programa). - Brez
-CertificateThumbprintpaket ni podpisan. Upravljana okolja nepodpisane pakete običajno zavrnejo. Podpisovanje potrebujesigntool.exeiz kompleta Windows SDK in dostop do strežnika za časovne žige (-TimestampUrl, privzeto DigiCert). - Paket namesti samo zaganjalnik. Predpogoji računalnika (Microsoft Access ali Access Runtime, gonilniki ODBC za vse uporabnike, komponente, registrirane za vse uporabnike) sodijo v lastne pakete oddelka IT; zaganjalnik jih preveri s pogoji (
conditions) projekta in sporoči, kaj manjka. - Uporabniki aplikacijo zaženejo iz menija Start. Zaganjalnik nato dela samo v uporabnikovem profilu, kot opisujejo navodila Razdeljevanje aplikacije uporabnikom z zaganjalnikom.
sourcenavedite kot skupno rabo ali absolutno pot. Relativnisource(na primerdeploy, kot ga zapiše/new-project) se razreši glede na mapo zaganjalnika, po namestitvi torej glede naProgram Files (x86)\WKL\<product>. Nameščeni zaganjalnik se takrat ustavi s kodo 12,/checkin/whatifpoleg projektne datoteke pa napake ne sporočita, ker se relativna pot tam razreši (Mape z aplikacijo ni mogoče doseči (koda 12)).- V Aplikacijah sta dva vnosa z imenom aplikacije. Paket zaganjalnik registrira za ves računalnik; ta vnos odstrani zaganjalnik in njegovo projektno datoteko, zahteva skrbniške pravice in je naloga oddelka IT. Ob prvem zagonu zaganjalnik za vsakega uporabnika doda vnos za nameščeno aplikacijo, ki aplikacijo odstrani iz uporabnikovega profila (
/uninstall). Oba prikazujetadisplay.nameprojektne datoteke, sicer ključ izdelka.
Sorodne teme
- Objava podpisane izdaje – ključ za izdaje, s katerim zaganjalnik sprejme samo založnikove izdaje.
- Projektna datoteka (format 2) – vsi člani projektne datoteke.
- Prehod s prejšnjega zaganjalnika – priprava projektne datoteke iz konfiguracije StarterPro.