Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
MSIX pro jeden projekt je funkce, která umožňuje vytvořit zabalenou desktop aplikaci WinUI 3 bez nutnosti samostatného balícího projektu. Aplikace WinUI je aplikace, která pro své uživatelské rozhraní používá architekturu WinUI; a používá Windows App SDK. Pokud chcete zabalit desktopovou aplikaci, která není aplikací WinUI, přečtěte si téma Nastavte si desktopovou aplikaci pro balení MSIX ve Visual Studiu.
Funkce MSIX pro jeden projekt je dostupná jako rozšíření pro Visual Studio, které můžete použít pro tyto scénáře:
- Vytvořte novou desktopovou aplikaci WinUI pomocí šablony projektu Visual Studio WinUI Blank App (zabalená), která je zahrnuta v sadě Windows App SDK. Tento projekt je nakonfigurovaný tak, aby se aplikace sestavila do balíčku MSIX bez nutnosti samostatného balicího projektu.
- Upravte stávající desktopovou aplikaci WinUI, která používá samostatný balicí projekt. Změna zahrnuje odebrání samostatného projektu balení, jak je znázorněno na obrázku níže.
Přehled
Tato část představuje několik důležitých podrobností o funkci MSIX pro jeden projekt.
Výhody
Před zavedením jedno-projektové funkce MSIX, pokud jste chtěli vytvořit desktopovou aplikaci WinUI v balení, pak jste potřebovali ve svém řešení dva projekty – projekt vaší aplikace a další Windows Application Packaging Project (viz Nastavit desktopovou aplikaci pro balení MSIX ve Visual Studio). Funkce MSIX s jedním projektem umožňuje vyvíjet a sestavovat aplikace jenom pomocí projektu pro vaši aplikaci. To poskytuje čistější strukturu project a jednodušší vývojové prostředí. Jako spouštěcí projekt například už nemusíte vybírat samostatný projekt balení.
Podporované typy project
Funkce MSIX pro jeden projekt podporuje WinUI šablony ve Visual Studiu (C# a C++) pro Windows App SDK.
Omezení
MSIX s jedním projektem podporuje pouze jeden spustitelný program ve vytvořeném balíčku MSIX. Pokud potřebujete zkombinovat více spustitelných souborů do jednoho balíčku MSIX, budete muset ve svém řešení dál používat Project Windows Application Packaging.
Instalace nástrojů pro balení MSIX pro jediný projekt
Balíčkovací nástroje MSIX pro jednotlivé projekty zahrnují šablony projektů Visual Studio, které lze použít pro vytvoření nových zabalených desktopových aplikací WinUI. Tyto nástroje jsou součástí rozšíření Windows App SDK pro Visual Studio. Pokyny k instalaci pro Windows App SDK najdete v tématu Instalace nástrojů pro Windows App SDK.
Windows App SDK verze 0.8 a C# verze 1.0 Preview 3: Balíčkovací nástroje MSIX pro jeden projekt nejsou součástí rozšíření Windows App SDK pro Visual Studio pro Windows App SDK ve verzi 0.8, ani pro projekty v jazyce C# až po verzi Preview 3 Windows App SDK 1.0. Pokud tedy tyto verze používáte, možná budete muset explicitně nainstalovat nástroje pro balení MSIX s jedním projektem. Podívejte se na následující informace:
Visual Studio 2026 nebo novější: Nástroj pro balení MSIX pro jednotlivé projekty je integrovaný přímo do Visual Studio 2026 a novější.
Starší verze sady Visual Studio: Nainstalujte VSIX rozšíření MSIX Packaging Tools pro Visual Studio 2026 pro jeden projekt.
Chcete-li ověřit, že máte nainstalované rozšíření, klikněte na Extensions>Spravovat rozšíření>Nainstalováno>Všechny a zkontrolujte, jestli je uvedený Single-project MSIX Packaging Tools.
Vytvoření nového project
Pokud používáte sadu Windows App SDK 1.0 Preview 2 nebo novější, můžete vytvořit novou aplikaci založenou na WinUI, která obsahuje podporu MSIX s jedním projektem, jednoduše pomocí šablony WinUI Blank App (Packaged ). Další informace najdete v tématu Vytvoření prvního projektu WinUI.
Úprava existujícího project
Podle kroků v této části upravte existující aplikaci založenou na WinUI, která používá samostatný balíček project. Kroky zahrnují přesunutí manifestu balíčku (a další podpory potřebné k sestavení balíčku MSIX) do projektu aplikace a následné odebrání samostatného projektu balení.
Krok 1: Vytvořte nebo otevřete existující projekt balení
Pokud už máte řešení desktopové aplikace WinUI (viz Šablony WinUI ve Visual Studio), které obsahuje Windows Application Packaging Project (viz Nastavení desktopové aplikace pro balení MSIX ve Visual Studio), pak toto řešení otevřete ve Visual Studio.
Pokud ne, vytvořte novou desktopovou aplikaci WinUI ve Visual Studio pomocí šablony Blank App, zabalené pomocí Windows Application Packaging Project (WinUI v desktopové verzi). Vaše řešení bude vypadat podobně jako na následujícím snímku obrazovky.
Řešení využívající projekt balíkování
Krok 2: Úprava nastavení project aplikace
Dále upravte některá nastavení konfigurace tak, aby používala funkci MSIX pro jeden projekt. V závislosti na typu project a verzi Visual Studio existují různé pokyny.
V Solution Explorer dvakrát klikněte na uzel projektu vaší aplikace a otevřete soubor .csproj v editoru XML. Do hlavního <elementu PropertyGroup> přidejte následující KÓD XML.
<EnableMsixTooling>true</EnableMsixTooling> <PublishProfile>Properties\PublishProfiles\win10-$(Platform).pubxml</PublishProfile>Až to budete mít, měl by element <PropertyGroup> vypadat nějak takto.
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>WinExe</OutputType> <TargetFramework>net8.0-windows10.0.19041.0</TargetFramework> ... <UseWinUI>true</UseWinUI> <EnableMsixTooling>true</EnableMsixTooling> <PublishProfile>Properties\PublishProfiles\win10-$(Platform).pubxml</PublishProfile> </PropertyGroup>Uložte změny a zavřete soubor .csproj .
V závislosti na vaší verzi Visual Studio proveďte jeden z následujících postupů.
Pro Visual Studio 2026 nebo novější:
V Solution Explorer klikněte pravým tlačítkem na složku Properties pod uzlem projektu vaší aplikace a vyberte Přidat>Nová položka....
Vyberte Textový soubor, pojmenujte nový soubor launchSettings.jsona klikněte na Tlačítko Přidat. Ujistěte se, že je nový soubor ve složce Properties vaší aplikace project.
Do nového souboru zkopírujte následující nastavení. Hodnoty můžete podle potřeby pro svůj scénář změnit. Hodnota MyApp může být libovolný řetězec; nemusí odpovídat názvu vaší aplikace.
{ "profiles": { "MyApp": { "commandName": "MsixPackage", "commandLineArgs": "", /* Command line arguments to pass to the app. */ "alwaysReinstallApp": false, /* Uninstall and then reinstall the app. All information about the app state is deleted. */ "remoteDebugEnabled": false, /* Indicates that the debugger should attach to a process on a remote machine. */ "allowLocalNetworkLoopbackProperty": true, /* Allow the app to make network calls to the device it is installed on. */ "authenticationMode": "Windows", /* The authentication scheme to use when connecting to the remote machine. */ "doNotLaunchApp": false, /* Do not launch the app, but debug my code when it starts. */ "remoteDebugMachine": "", /* The name of the remote machine. */ "nativeDebugging": false /* Enable debugging for managed and native code together, also known as mixed-mode debugging. */ } } }Uložte a zavřete soubor launchSettings.json .
Krok 3: Přesunutí souborů do aplikace project
V dalším kroku přesuňte několik důležitých souborů do project aplikace. V závislosti na typu project existují různé pokyny.
- V Průzkumníku souborů přesuňte soubor Package.appxmanifest a složku Images z vašeho balíčkového projektu do projektu aplikace. Tento soubor a složku umístěte na nejvyšší úroveň hierarchie složek aplikace project.
- V Visual Studio ve složce Solution Explorer vyberte všechny obrázky uvnitř složky Images. V okně Vlastnosti nastavte Akci sestavení na Obsah.
- Odstraňte balicí projekt z vašeho řešení.
Krok 4: Povolení nasazení v Configuration Manager
- Vyberte Build>Configuration Manager.
- V Configuration Manager klikněte na zaškrtávací políčko Deploy pro každou kombinaci konfigurace a platformy (například Debug a x86, Debug a arm64, Release a x64 a další).
Poznámka:
Nezapomeňte použít rozevírací nabídky Active řešení a Active platformu řešení v horní části místo rozevíracích seznamů Konfigurace a platformy ve stejném řádku jako Nasadit.
Krok 5: Nasazení aplikace
Sestavte a nasaďte váš aplikační projekt. Visual Studio aplikaci sestaví do balíčku MSIX, nainstaluje balíček a pak spustí vaši aplikaci.
Krok 6: Zabalení aplikace pro publikování
Použijte příkaz
Automatizujte sestavování a balení vaší MSIX aplikace jediného projektu.
Pomocí msbuild můžete sestavit a zabalit aplikaci MSIX s jedním projektem, což vám umožní automatizovat workflow. Technika řešení s jedním projektem a příkazovým řádkem se mírně liší od toho, co už možná děláte, pokud máte řešení se dvěma projekty – jedno, které má Windows Application Packaging Project (viz Nastavte si desktopovou aplikaci pro balení MSIX ve Visual Studiu).
Důležitou možností příkazu sestavení pro řešení s jedním projektem je /p:GenerateAppxPackageOnBuild=true. Bez této možnosti se project sestaví, ale nebudete mít balíček MSIX. Zahrňte tuhle možnost a to způsobí, že se balíček MSIX vygeneruje.
Existuje úplný příklad ve formě GitHub akce, která sestaví řešení WinUI s jedním projektem.
Poznámka:
Jednoprojektový MSIX v současné době nepodporuje vytváření sad MSIX (viz Balíčkování MSIX). Vygeneruje pouze jednu MSIX. Soubory .msix ale můžete sbalit do sady MSIX pomocí akce MSIX Bundler GitHub.
Jak běží zabalená desktopová aplikace ve Windows
Podrobnější informace o tom, co se stane se soubory a položkami registru při vytváření balíčku Windows app pro desktopovou aplikaci, najdete v tématu Podstatování toho, jak zabalené desktopové aplikace běží ve Windows.
Poskytnutí zpětné vazby
Pokud nám chcete poslat zpětnou vazbu, ohlásit problémy nebo pokládat otázky týkající se funkce MSIX pro jednoho projektu, zveřejněte diskuzi nebo problém v úložišti Windows App SDK GitHub.
Windows developer