Balení aplikací pomocí MSIX a správa zabezpečených aktualizací Stal se klíčovou součástí moderního ekosystému Windows, a to jak pro vývojáře, tak pro systémové administrátory a týmy virtualizace desktopů. MSIX zdaleka není „jen dalším formátem“, ale definuje, jak se aplikace instaluje, aktualizuje, izoluje a integruje s operačním systémem a se službami, jako je Microsoft Store, Azure Virtual Desktop a Citrix Virtual Apps and Desktops.
Navíc, Vylepšení zabezpečení, výkonu, úspory šířky pásma a zjednodušená správa Systém MSIX a s ním spojené technologie (jako například připojení aplikace MSIX nebo připojení aplikace MSIX) postupně nahradily tradiční instalační programy, jako jsou EXE nebo MSI, a virtualizační řešení, jako je App-V, a zároveň si zachovaly kompatibilitu s náročnými obchodními scénáři a nabídly vysoce pokročilý a diferencovaný model upgradu.
Co je MSIX a proč je tak důležitý pro Windows?
MSIX je moderní formát balení pro aplikace systému Windows. Je navržen tak, aby sjednotil výhody AppX, MSI a App-V do jednoho modelu. Nabízí identitu balíčku, čistou instalaci, odinstalaci bez zbytků, přírůstkové aktualizace a lehký kontejner, který snižuje konflikty se systémem a ostatními aplikacemi.
Identita balíčku MSIX umožňuje systému Windows s absolutní přesností zjistit, která aplikace volá které API, což umožňuje funkce, které byly dříve dostupné pouze pro aplikace UWP: úlohy na pozadí, bohatá oznámení, integrace kontextových nabídek, přidružení souborů, vlastní protokoly nebo aliasy pro spuštění z konzole.
Na rozdíl od nebalených aplikací, které se stále spoléhají na EXE/MSI, tradiční instalaci a neidentifikaci balíčku, MSIX nabízí spolehlivější, automatičtější a lépe ovladatelnou instalaci a upgrade.a zároveň zjednodušuje práci IT oddělení tím, že se po odinstalaci vyhneme zbylým souborům, osiřelým knihovnám DLL nebo klíčům registru.
K dispozici je také model „balené externí lokality“Tento přístup je určen pro desktopové aplikace, které zatím nemohou přesunout veškerý svůj obsah do balíčku MSIX. Díky tomuto přístupu aplikace získá identitu balíčku, ale některá její data nebo binární soubory zůstanou mimo kontejner, což usnadňuje postupné migrace.
Typy balíčků MSIX a související formáty
V ekosystému MSIX neexistuje pouze jeden typ souboru, ale několik doplňkových formátů, které pokrývají vše od přímé instalace až po distribuci optimalizovanou pro Microsoft Store nebo infrastruktury třetích stran. Toto jsou nejběžnější:
- Balíček aplikace (.msix nebo .appx). Toto je „základní“ balíček, který obsahuje aplikaci a její prostředky pro architekturu jednoho zařízení (x86, x64, ARM atd.). Pro podporu více architektur se samostatnými balíčky je pro každou z nich vygenerován samostatný soubor.
- Balíček aplikací (.msixbundle nebo .appxbundle)Kontejner, který seskupuje několik aplikačních balíčků, z nichž každý je zaměřen na specifickou architekturu. Díky tomuto seskupení systém stáhne a nainstaluje pouze optimální balíček pro každé zařízení a aplikace se tak stane kompatibilní s mnohem širší škálou zařízení s jediným distribuovatelným souborem.
- Soubor pro nahrání balíčku aplikace (.msixupload nebo .appxupload). Speciálně navrženo pro publikování vaší aplikace v obchodě Microsoft Store prostřednictvím Centra partnerů. Může obsahovat jeden nebo více balíčků MSIX a také komprimovaný soubor symbolů (.appxsym), který umožňuje analyzovat výkon a pády přímo z partnerské platformy.
Formáty pro připojení aplikací MSIX, jako například .vhd, .vhdx nebo .cim, se používají, když mluvíme o připojování aplikací MSIX (připojení aplikací MSIX) v prostředích, jako je Azure Virtual Desktop nebo Citrix. V těchto scénářích je obsah balíčku MSIX předem rozbalen v rámci virtuálního disku nebo obrazu CimFS a dynamicky připojen k uživatelským počítačům.
Předpoklady pro práci s MSIX a MSIX Packaging Tool
Pro pohodlné balení aplikací pomocí MSIX poskytuje Microsoft Nástroj pro balení MSIX. Tento nástroj je k dispozici v obchodě Microsoft Store a lze jej také distribuovat offline. Umožňuje převádět instalační programy MSI a EXE, balíčky App-V 5.x a dokonce i nasazení ClickOnce do nového formátu MSIX, a to jak z grafického rozhraní, tak z příkazového řádku.
L základní požadavky Pro použití nástroje MSIX Packaging Tool potřebujete systém Windows 10 verze 1809 nebo vyšší, oprávnění správce v počítači a v případě instalace z obchodu Store také platný účet Microsoft (osobní nebo firemní) pro přístup ke stažení.
Nástroj Lze jej nainstalovat několika způsoby:
- Přímo z Microsoft Storu pomocí příkazu WinGet
winget install "MSIX Packaging Tool". - Prostřednictvím offline balíčku, který je později začleněn do systému pomocí PowerShellu
Add-AppxProvisionedPackagespolu s odpovídajícím licenčním souborem.
V pokročilých obchodních scénářích je běžné Kombinujte nástroj MSIX Packaging Tool s dalšími nástroji, jako jsou MSIX Manager, AppVentiX nebo MSIX Hero automatizovat převod do kontejnerů VHD/VHDX/CIM a spravovat rozsáhlé katalogy zabalených aplikací.
Příprava aplikace před balením pomocí MSIX
Před převodem jakékoli aplikace do MSIX je vhodné provést předběžné testování a optimalizaci. Není to nic okouzlujícího, ale ušetří to spoustu bolestí hlavy v produkčním prostředí.
- Ověřte, zda aplikace funguje správně napříč všemi rodinami zařízení, které chcete podporovat. Visual Studio usnadňuje nasazení a ladění v těchto prostředích, a to i pro desktopové aplikace zabalené jako UWP.
- Optimalizujte výkon. Díky nástrojům pro profilování ve Visual Studiu – využití CPU, spotřeba paměti, analýza časové osy uživatelského rozhraní atd. – balíček MSIX pomalou aplikaci nezrychlí. Pouze zajistí její plynulejší instalaci a aktualizaci, ale základní výkon zůstává odpovědností vývojáře.
- Ověřte kompatibilitu s .NET NativeVerze Release obvykle umožňují tomuto nativnímu kompilátoru zlepšit výkon za běhu. Je velmi důležité testovat aplikaci s nativní verzí Release, a ne pouze v režimu ladění.
Konfigurace balíčku ve Visual Studiu: manifest MSIX
Ve světě MSIXu, Srdcem konfigurace je manifest, soubor Package.appxmanifestToto je soubor XML, který definuje identitu aplikace, název vydavatele, verzi, ikony, podporované orientace, systémové možnosti, přidružení souborů, vlastní protokoly, aliasy pro spuštění, úlohy na pozadí a mnoho dalšího.
Visual Studio zahrnuje a grafický designér manifestů což eliminuje nutnost ruční úpravy XML. V Průzkumníku řešení jednoduše rozbalte projekt, dvakrát klikněte na Package.appxmanifest a pracovat s různými záložkami: obecné informace, možnosti, vizuální zdroje, balení atd.
- Na kartě Vizuální zdroje Ikony a loga jsou definovány pro nabídku Start, hlavní panel, seznam aplikací nebo oznámení v kontextovém okně.
- Na záložce obalu Můžeme definovat podrobnosti publikace a především certifikát pro podepsání balíčku. Všechny aplikace MSIX musí být podepsány. Jinak je systém Windows nebude považovat za důvěryhodné.
Systémové funkce, integrace a rozšíření
Jednou z největších silných stránek MSIX je počet integrací, které odemkne s operačním systémem prostřednictvím manifestu. Zde se aktivují funkce, partnerství a rozšiřující body, které mají oproti klasické aplikaci zásadní význam.
- Systémové možnosti Řídí přístup k citlivým zdrojům: poloze, mikrofonu, kameře, síti, uživatelským souborům, USB zařízením atd. Je zásadní deklarovat pouze ty funkce, které jsou skutečně potřebné. Vyžadování více, než je nutné, může vést k varováním, problémům s certifikací nebo odmítnutí ze strany IT administrátorů.
- Přizpůsobené protokoly umožnit aplikaci reagovat na URI, jako například
miapp://loqueseaToto se používá pro hluboké odkazování z webu, integraci s jinými aplikacemi nebo jednotné přihlašování (SSO) a konfiguruje se v manifestu uvedením schématu a spustitelného souboru, který se má spustit. - Archivní asociace Definují, které typy souborů (podle přípony nebo typu MIME) se aplikace otevře po dvojitém kliknutí a která ikona se pro ně zobrazí. MSIX poskytuje jasný deklarativní model pro registraci těchto asociací bez zbytečného zahlcování registru systému Windows.
- Alias spuštění (AppExecutionAlias) umožňuje spustit aplikaci z konzole zadáním jednoduchého
miapp.exeaniž byste museli znát celou trasu pod nimiC:\Program Files\WindowsAppsJe to obzvláště užitečné pro balené nástroje příkazového řádku, jako je MSIX.
Balení aplikace pomocí Visual Studia: z projektu do MSIX
Jakmile je projekt a manifest připraven, dalším krokem je vygenerujte balíček MSIX. Visual Studio nabízí velmi podrobného průvodce balením, který zahrnuje jak scénáře načítání z boku, tak publikování do Microsoft Storu.
Základní pracovní postup ve Visual Studiu sestává z:
- Otevřete řešení.
- Klikněte pravým tlačítkem myši na zabalený projekt.
- Vyberte možnost Publikovat.
- Vyberte „Vytvořit balíčky aplikací“.
Poté se vás asistent zeptá, zda chcete balíček podepsat (obvyklá odpověď je ano), umožní vám vybrat si mezi načítáním z externího serveru nebo úložištěm a provede vás výběrem podpisového certifikátu.
Pro podpis můžete použít certifikát z místního úložiště certifikátůMůžete exportovat soubor PFX nebo vygenerovat vývojový certifikát s vlastním podpisem. V podnikovém prostředí se doporučuje certifikát vydaný interní PKI nebo veřejnou autoritou, aby jej všechna zařízení rozpoznala bez dalších kroků.
Pokud je cílem Microsoft StorePrůvodce automaticky vytvoří soubor pro nahrávání (.msixupload nebo .appxupload), který obsahuje balíček a symboly potřebné pro analýzu výkonu a blokování v Partnerském centru. Pokud se rozhodnete pouze načíst soubor z jiného zdroje, výsledkem bude soubor .msix nebo .msixbundle připravený k distribuci prostřednictvím jiných kanálů.
Instalace balíčku MSIX a lokální testování
Instalace balíčku MSIX je překvapivě jednoduchá V testovacích scénářích: jednoduše dvakrát klikněte na soubor .msix nebo .msixbundle a otevře se Instalační program aplikací, který zobrazí název, vydavatele, verzi, požadovaná oprávnění a tlačítko instalace s indikátorem průběhu.
Když jsou balíčky generovány v režimu „Balíčky aplikací“ v aplikaci Visual StudioSoučástí je PowerShellový skript (Add-AppDevPackage.ps1) uvnitř složky s příponou _TestSpuštění tohoto skriptu s příkazem „Spustit s PowerShellem“ automaticky nainstaluje vývojový certifikát a balíček a po dokončení se zobrazí zpráva o úspěšném dokončení.
Je také možné spravovat instalaci a odinstalaci. pomocí PowerShellu, například s Add-AppxPackage, Get-AppxPackage y Remove-AppxPackagecož je klíčové v automatizačních skriptech a CI/CD pipelinech.
Připojení aplikací MSIX a připojení aplikací ve virtualizovaných prostředích
Připojení aplikací MSIX je „moderní“ tváří doručování aplikací. V prostředích, jako je Azure Virtual Desktop a řešení EUC třetích stran, se místo instalace aplikace v rámci základního obrazu nebo na každý počítač připojuje kontejner, který již obsahuje rozšířenou aplikaci a je „připojen“ k relaci uživatele. V těchto infrastrukturách je nutné zvážit běžné problémy. RDP připojení.
Tato technika se opírá o Kontejnery VHD, VHDX nebo CIM které zahrnují obsah balíčku MSIX. Tyto soubory se nacházejí ve sdílené síťové složce nebo v úložišti Azure a jsou dynamicky připojovány k VDA (Virtual Delivery Agents) nebo hostitelům relací podle potřeby. Výhody tohoto nástroje jsou:
- Udržujte obrazy systému menší a obecnější.
- Zkraťte dobu potřebnou k dodání nových strojů.
- Usnadněte správu verzí.
- Minimalizujte dopad změn softwaru na sdílené plochy.
Je nezbytné, aby balíčky MSIX byly podepsány důvěryhodným certifikátem. aby systém umožňoval jeho instalaci a používání. Certifikát musí být rozpoznán VDA nebo fyzickými počítači, ke kterým bude aplikace připojena.
V praxi mnoho administrátorů kombinuje připojení aplikací MSIX s nástroji jako Virtuální aplikace a stolní počítače Citrix, která integruje správu MSIX, App-V a dalších technologií (například FlexApp) prostřednictvím své komponenty pro doručování balíčků ve VDA.

Citrix, App-V, MSIX a další technologie podnikových balíčků
Ve velkých korporátních prostředích obvykle neexistuje pouze jeden typ obalu.ale kombinace koexistujících technologií: App-V pro klasickou virtualizaci aplikací, MSIX pro moderní balení a v některých případech i aplikační vrstvy, jako je FlexApp.
Citrix Virtual Apps and Desktops nabízí dva přístupy k App-Vduální administrace (kde servery App-V spravují celý životní cyklus a Citrix s nimi spolupracuje) a jednotná administrace (kde jsou balíčky App-V uloženy ve sdílené síťové složce a Citrix přímo zpracovává doručování a dynamické konfigurační soubory).
Pro připojení MSIX a aplikací MSIXCitrix používá komponentu pro doručování balíčků, která je instalována na VDA. Tato komponenta spravuje životní cyklus balíčků na hostitelském počítači, ať už se jedná o nativní balíček MSIX nebo o bitovou kopii aplikace (.vhd, .vhdx, .cim), a koordinuje publikování aplikací do skupin pro doručování.
Balíčky se obvykle ukládají do síťových sdílených složek UNC/SMB nebo do souborů Azure., ke kterým mají VDA přístup pouze s oprávněním pro čtení. V některých případech je nutné upravit servisní účet (ctxAppVService) aby používal přihlašovací údaje uživatelů s oprávněními v Azure namísto účtu lokálního počítače, s ohledem na možné síťové zásady které mohou blokovat přístup.
Administrátoři mohou nahrávat balíčky hromadně nebo jeden po druhém. Z Web Studia je přiřaďte do skupin pro doručování, ovládejte jejich viditelnost (pracovní prostor, plocha nebo obojí) a v případě App-V nakonfigurujte izolační skupiny, které vám umožní automaticky nasazovat vzájemně závislé balíčky ve stejném virtuálním prostoru.
Pochopení MSIX jako ústřední osy životního cyklu aplikace – od způsobu balení a podepisování až po způsob připojení k virtuálním desktopům a aktualizace pomocí diferenciálních bloků – umožňuje návrh mnohem robustnějších, bezpečnějších a snadněji udržovatelných nasazení než u klasických instalačních programů, plně využívá moderní funkce Windows a usnadňuje život vývojářům i IT týmům.

