Windows Installer

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2018. szeptember 29-én felülvizsgált verziótól ; az ellenőrzések 18 szerkesztést igényelnek .
Windows Installer

Típusú Microsoft Windows komponens [d] éstelepítő
Fejlesztő Microsoft
Operációs rendszer ablakok
Hardver platform Microsoft Windows
legújabb verzió 5.0 [1] ( 2009. július 22. )
Olvasható fájlformátumok MSI , Windows telepítési információs fájl [d] és Windows telepítési inf_loc fájl [d]
Engedély Microsoft felhasználói szerződés
Weboldal docs.microsoft.com/… ​(  angol)

A Windows Installer ( Windows Installer , kódnév - Darwin [2] [3] ) a Microsoft Windows alrendszere, amely programok telepítését ( telepítő ) biztosítja. A Windows 2000 óta a Windows összetevője; telepíthető a Windows korábbi verzióira. A telepítéshez szükséges összes információt (néha a telepítendő fájlokkal együtt ) .msi [4] kiterjesztésű telepítőcsomagok (telepítőcsomagok) tartalmazzák.

Történelem

A Windows Installert 1995-1998 -ban fejlesztették ki, és eredetileg Darwin kódneve volt . A korai verziókat Microsoft Installernek hívták , ezért a szabványos telepítőcsomag fájlkiterjesztése .msi . [5]

Az Installer első verziója 1999 elején jelent meg Microsoft Office  2000 telepítőként, majd az év végén az Installer a Windows 2000 részévé vált . A Microsoft minden lehetséges módon arra ösztönözte a fejlesztőket, hogy váltsanak át az új telepítőre, ideértve az úgynevezett Windows 2000 emblémát megkapni kívánó programok követelménylistájában a Windows Installer használatával történő telepítés követelményét is.

A Windows Installer jelentős előrelépésnek bizonyult az előző Microsoft telepítőhöz - Setup API (ACME Setup) képest: bevezette a grafikus felhasználói felület funkcióit , támogatja az eltávolítást és a visszaállítást a telepítés során bármikor (beleértve a visszaállítást az eltávolítás során), a megfelelő munkavégzést hozzáférési jogok a Windowsban és más szolgáltatásokban, ami erős alternatívát jelent a piacon lévő különféle telepítőcsomagokkal szemben.

A jövőbeli frissítések bevezetik a .MSIX-et, amely a . APPX és .MSI, amely lehetővé teszi UWP alkalmazások telepítését a rendszerbe (jelenleg ez csak közvetlenül a Microsoft Store-on keresztül lehetséges)

A csomag logikai felépítése

A telepítőcsomag egy termék telepítését írja le, és saját GUID -vel rendelkezik . A termék funkciókba csoportosított összetevőkből áll (saját GUID-jük is van) .

Összetevő (összetevő) - a minimális oszthatatlan telepítési egység, amely fájlok, rendszerleíró értékek, létrehozott mappák és egyéb elemek csoportja, amelyeket egy közös név (összetevő neve) egyesít, és vagy együtt van telepítve, vagy nincs telepítve. Az összetevők rejtve vannak a végfelhasználó elől. Minden összetevőhöz tartozik egy kulcsútvonal (kulcsútvonal) – például a főfájl neve –, amely meghatározza ennek az összetevőnek a jelenlétét a felhasználó számítógépén.

Az Opportunity (funkció; a Windows orosz verziójában ezt a szót „komponensként” fordítják, ami zavart okoz) az összetevők és/vagy egyéb szolgáltatások hierarchikus csoportja. Ha a telepítés során megjelenik egy párbeszédablak a program telepített részeinek kiválasztásához, a felhasználó szabályozza a funkciók kiválasztását . A telepítési opció kiválasztása az összes benne lévő összetevő telepítését jelenti [6] .

A csomag fizikai felépítése

Az .msi fájl egy összetett OLE dokumentum (az OLE összetett dokumentum - Microsoft Word , Excel stb. dokumentumok ugyanabban a konténerformátumban vannak tárolva), amely egy kis relációs adatbázist tartalmaz  - több tucat, egymással összefüggő táblát, amelyek különféle információkat tartalmaznak termék és a telepítési folyamat. Ebben az esetben az adatbázisban található összes karakterlánc adat egy külön dokumentumfolyamban együtt kerül tárolásra, és az adatbázis tábláiban hivatkozások találhatók rájuk; így elkerülhető a sorok megkettőzése, ami jelentősen csökkenti az adatbázis méretét.

Az .msi fájl szerkezete az alap mellett biztosítja a telepítéshez szükséges felhasználói szkriptek és kiegészítő DLL -ek elhelyezését , ha vannak, valamint maguk a telepíthető fájlok, .cab formátumban csomagolva . A fájlok a csomagtól külön is elhelyezhetők, csomagolt vagy kicsomagolt formában (megőrizve a könyvtárszerkezetet).

Telepítési folyamat

A telepítési folyamat több szakaszból áll – információgyűjtésből, végrehajtásból (a tényleges telepítés) és esetleg visszaállításból (hiba vagy a felhasználó általi telepítés törlése esetén).

Műveletek

A telepítés minden szakasza műveletek sorozatából (műveletek) áll, amelyeket az adatbázisban rögzítenek. A műveletekhez számok vannak hozzárendelve, amelyek meghatározzák a végrehajtásuk sorrendjét, és néha azokat a feltételeket is, amelyek mellett a műveletek végrehajtásra kerül sor vagy nem.

A legtöbb lépés egy tipikus információgyűjtési és telepítési folyamat szokásos lépése. Mindezek a műveletek dokumentálva vannak, rajtuk kívül a felhasználó meghatározhatja saját műveleteit (egyéni műveletek).

A felhasználó által definiált műveletek írhatók az operációs rendszerbe beépített szkriptnyelvek valamelyikén ( JScript vagy VBScript , valamint az Eclipse, a C++ egyik melléknyelve), vagy elhelyezhetők egy speciálisan létrehozott DLL -ben (nyelveken írva). például C , C++ stb.). Az ezekkel a műveletekkel rendelkező fájlok az .msi fájlba kerülnek , és onnan bontják ki a telepítés kezdetén. Ezek a DLL-ek a Windows\Installer könyvtárba kerülnek kibontásra, és véletlenszerű neveket kapnak, például MSIF65E.tmp.

Információgyűjtés

Az információgyűjtési fázis során a Windows Installer utasításokat gyűjt (akár felhasználói beavatkozással, akár programozottan) a termékben található egy vagy több szolgáltatás telepítéséhez vagy eltávolításához. Ezek az utasítások azután belső szkriptet képeznek az adatbázis alapján, részletezve a következő végrehajtási lépést.

Ezt a szakaszt azonnali módnak (azonnali módnak) is nevezik .

Végrehajtás

Ennek a lépésnek az elejére a telepítő létrehozott egy belső szkriptet, amelyet úgy terveztek, hogy felhasználói beavatkozás nélkül lehessen végrehajtani. Ezt a szkriptet a telepítő privilegizált NT szolgáltatási módban futtatja (pontosabban a LocalSystem fiók alatt ). A privilegizált módra azért van szükség, mert a telepítést olyan felhasználó is elindíthatja, aki nem rendelkezik a rendszerparaméterek és fájlok módosításához szükséges jogosultságokkal (bár a program telepítési jogát megkapta).

Ezt a szakaszt néha halasztott módnak nevezik.

Visszagörgetés

Ha a szkriptben meghatározott műveletek bármelyike ​​meghiúsul, vagy a folyamatban lévő telepítést a felhasználó megszakítja, az addig végrehajtott összes műveletet visszaállítja , visszaállítva a rendszert a telepítés előtti állapotba. A visszagörgetést minden egyes, a rendszert megváltoztató cselekvés jelenléte biztosítja, annak fordítottja. Amikor nem szabványos műveleteket viszünk be egy csomagba, a programozónak inverzeket is létre kell hoznia ahhoz, hogy a visszagörgetés megfelelően működjön [7] .

Egyéb jellemzők

Bejelentés és igény szerinti telepítés

A Windows Installer a telepítés helyett hirdetheti a terméket [8] . A termék megjelenik a felhasználó számára, de valójában csak az első indításig kerül telepítésre ( a start menüben található parancsikon segítségével ). A telepítőcsomagot a rendszergazda hirdetheti meg a Windows csoportházirend vagy más fordítási mechanizmus használatával, vagy az msiexec végrehajtható fájl futtatásával a /jm paranccsal (eszközönkénti hirdetésekhez) vagy a /ju (felhasználói hirdetésekhez). Egyes InstallShield programmal létrehozott MSI-csomagok zavarhatják ezen és más beépített MSI-szolgáltatások használatát.

A felhasználónak rendszergazdai jogokkal kell rendelkeznie a hirdetett telepítés befejezéséhez.

Telepítés igény szerint

A termék reklámozásához hasonlóan az igény szerinti telepítés azonnal telepít egy funkciót, amint a felhasználó megpróbálja használni [9] .

Jegyzetek

  1. A Windows Installer kiadott verziói . Microsoft Developer Network . Microsoft . Letöltve: 2015. február 22. Az eredetiből archiválva : 2014. december 13..
  2. amikor a beállítás nem csak xcopy : Az Orca története . Archiválva az eredetiből 2008. december 23-án.
  3. Windows Installer, The .NET Framework, The Bootstrapper és You – Chris Smith teljesen egyedi nézete . Letöltve: 2018. július 1. Az eredetiből archiválva : 2019. február 5..
  4. Fájlkiterjesztés .MSI részletek . Letöltve: 2018. július 1. Az eredetiből archiválva : 2021. augusztus 11.
  5. Rob Mensching. Az MSI fájlformátumon belül. . Letöltve: 2006. április 11. Az eredetiből archiválva : 2009. január 15..
  6. Windows Installer összetevők | Microsoft dokumentumok . Letöltve: 2018. július 1. Az eredetiből archiválva : 2018. július 1.
  7. Visszaállítás | Microsoft dokumentumok . Letöltve: 2018. július 1. Az eredetiből archiválva : 2018. július 1.
  8. Hirdetés | Microsoft dokumentumok . Letöltve: 2018. július 1. Az eredetiből archiválva : 2018. július 1.
  9. Igény szerinti telepítés | Microsoft dokumentumok . Letöltve: 2018. július 1. Az eredetiből archiválva : 2018. július 1.

Linkek