Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az MSIX négy csomagtípust támogat: Main, Framework, Resource és Optional. Az MSIX támogatja a kötegelt csomagokat is, amelyek egy vagy több MSIX-csomag terjesztési tárolói.
A csomagtípus az üzembe helyezés, a függőség, a végrehajtás és a karbantartási viselkedés kombinációját határozza meg. Bizonyos viselkedés eredendően a típushoz tartozik, míg a manifest deklaráció felülírhatja a többi alapértelmezett beállítást.
| Típus | Elsődleges cél | Manifesztum vagy azonosítójelző |
|---|---|---|
| Kezdőlap | Egy alkalmazás elsődleges csomagja | Nincs deklaráció más csomagtípushoz |
| Keretrendszer | Megosztott kódtárak, összetevők vagy futtatókörnyezeti tartalom | <Framework>true</Framework> |
| erőforrás | Nyelv-, méretarány- vagy minősítőspecifikus erőforrások | <ResourcePackage>true</ResourcePackage> |
| Optional | Egy fő csomaghoz társított további tartalom | <uap3:MainPackageDependency> |
| Köteg | Több MSIX-csomag terjesztési tárolója | Csomagjegyzék és egy ResourceId értéke: ~ |
Fő csomagok
A főcsomag az alkalmazás elsődleges csomagja. Deklarálhatja az alkalmazásokat, képességeket, függőségeket, bővítményeket és folyamaton kívüli kiszolgálókat.
A manifest nem tartalmaz explicit főcsomag-jelölőt. Egy csomag főcsomag, ha nem deklarálja magát más csomagtípusként.
Keretrendszercsomagok
Egy keretrendszercsomag megosztott kódtárakat, összetevőket, erőforrásokat vagy más futtatókörnyezeti tartalmakat biztosít. Más csomagok vagy folyamatok hozzáadják a keretrendszercsomagot a csomaggráfjukhoz a tartalom betöltése előtt.
A keretrendszercsomagok támogatják az egymás melletti verziókat, így az alkalmazások egymástól függetlenül áttérhetnek az újabb verziókra. Egy csomag a Framework jegyzékelemének true értékre állításával deklarálja ezt a típust.
A keretrendszercsomagok csomagolt és csomagolatlan folyamatokból való használatáról további információt A dinamikus függőségi API használata című témakörben talál.
Erőforráscsomagok
Az erőforráscsomag elválasztja a nyelv-, a megjelenítésiskála- vagy más minősítőspecifikus erőforrásokat a fő- vagy választható csomagoktól. Windows csak az eszközre vagy felhasználóra vonatkozó erőforráscsomagokat telepíti.
Az erőforráscsomagok végrehajtása alapértelmezés szerint nem engedélyezett. Egy csomag felülírhatja ezt az alapértelmezett beállítást az uap6:AllowExecution beállítással. Egy csomag a ResourcePackagetrue értékre állításával deklarálja az erőforrástípust.
Választható csomagok
Az opcionális csomag egy adott főcsomaghoz tartozó további tartalmat tartalmaz. Az alkalmazások például külön csomagokban helyezhetnek el letölthető térképeket, nagy felbontású erőforrásokat vagy opcionális eszközöket.
A Framework package-dzsel ellentétben egy választható csomag egy Main package familyhez van társítva. Ezt a kapcsolatot a uap3:MainPackageDependency elemen keresztül deklarálja.
A létrehozási és a kapcsolódókészlet-létrehozási követelményekről a Választható csomagok és a kapcsolódó készlet létrehozása című témakörben olvashat.
Csomagban lévő csomagok
Egy MSIX-köteg (.msixbundle) egy vagy több MSIX-csomagot tartalmaz. A csomag egyetlen terjesztési artefaktumot biztosít, miközben lehetővé teszi, hogy a Windows csak a céleszközre vonatkozó architektúrát és erőforráscsomagokat telepítse.
A köteg összes csomagja ugyanahhoz a csomagcsaládhoz tartozik. A bundle egy tároló, nem pedig egy ötödik üzembe helyezhető csomagtípus.
Csomagtípusok azonosítása a kódban
A Windows.ApplicationModel.Package osztály olyan tulajdonságokat tesz elérhetővé, amelyek azonosítják a csomag típusát:
static string GetPackageType(Windows.ApplicationModel.Package package)
{
if (package.IsBundle)
{
return "Bundle";
}
if (package.IsFramework)
{
return "Framework";
}
if (package.IsResourcePackage)
{
return "Resource";
}
if (package.IsOptional)
{
return "Optional";
}
return "Main";
}
Csomagtípusok azonosítása a PowerShell-lel
Alapértelmezés szerint Get-AppxPackage fő- és keretrendszercsomagokat ad vissza. A(z) -PackageTypeFilter használatával más típusokat is felvehet:
Get-AppxPackage -PackageTypeFilter Main,Framework,Resource,Optional,Bundle |
Select-Object Name, PackageFullName, IsFramework, IsResourcePackage, IsBundle
A kimeneti objektum nem teszi elérhetővé a(z) IsOptional tulajdonságot. A szűrővel opcionális csomagokat is tartalmazhat, és ha meg kell különböztetnie őket, vizsgálja meg a manifestum- vagy csomagkapcsolatukat.