Condividi tramite


Creazione del pacchetto di un'applicazione di isolamento app Win32 con Visual Studio

Questa pagina illustra tutti gli elementi necessari per creare un pacchetto di un'applicazione per sfruttare l'isolamento dell'app Win32.

Importante

Questa funzionalità è disponibile in anteprima: alcune informazioni sono correlate a un prodotto non definitiva che potrebbe essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.

Prerequisiti

Per creare il pacchetto di un'applicazione in un'app Win32 isolata, sono necessari i seguenti elementi:

  • Visual Studio versione 17.10.2 o successiva

Passaggio 1: Installare i carichi di lavoro necessari in Visual Studio, incluso Windows 11 SDK 10.0.26100.0 (o versione successiva)

Aprire il Programma di installazione di Visual Studio e modificare l'installazione esistente. Nella scheda Carichi di lavoro selezionare la casella Sviluppo di applicazioni Windows e, facoltativamente, selezionare la casella Strumenti di sviluppo di app WinUI C++ per lo sviluppo in C++. È necessario anche Windows 11 SDK 10.0.26100.0 (o versione successiva).

Screenshot che mostra i carichi di lavoro necessari da installare in Visual Studio

Passaggio 2: Creare il progetto dell'app

In Visual Studio creare un nuovo progetto C# o C++ usando il modello App vuota, in pacchetto con progetto di creazione pacchetti di applicazioni Windows (WinUI 3 in Desktop). Fare clic su Crea e quindi selezionare 10.0.26100.0 (o versione successiva) per Versione della piattaforma di destinazione (TPV) e Versione minima piattaforma di destinazione (TPMinV).

Screenshot che mostra un modello per un'app vuota con un progetto di creazione pacchetti di Windows in Visual Studio

Screenshot che mostra la schermata Nuovo progetto in Visual Studio

Screenshot che mostra la schermata del nuovo progetto WinUI in Visual Studio

Passaggio 3- Installare Microsoft.Windows.SDK.BuildTools versione 10.0.26100.1742 o successiva con NuGet

Passare a Project -> Manage NuGet Packages to install Microsoft.Windows.SDK.BuildTools version 10.0.26100.1 (or later).

Screenshot che mostra la schermata Gestisci pacchetti NuGet in Visual Studio

Screenshot che mostra il pacchetto Microsoft.Windows.SDK.BuildTools nella schermata NuGet in Visual Studio

Screenshot che mostra le informazioni per il pacchetto Build Tools nella schermata NuGet in Visual Studio

Passaggio 4 - Modificare il file Packaging.appxmanifest e i file di progetto

Nel file manifesto è necessario apportare le modifiche seguenti:

Nota: le applicazioni win32 isolate non sono compatibili con altri tipi di applicazioni all'interno dello stesso pacchetto.

  • Aggiungere xmlns:uap18="http://schemas.microsoft.com/appx/manifest/uap/windows10/18" all'elemento <Package> se non è già presente.

    • Aggiungere uap18 a IgnorableNamespaces alla fine dell'elemento <Package> .
  • In <Dependencies> modificare TargetDeviceFamily in <TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.26100.0" MaxVersionTested="10.0.26226.0" />.

    Nota

    Non tutte le funzionalità sono disponibili nella build minima, vedere le note sulla versione per informazioni più dettagliate. Inoltre, le modifiche del manifesto seguenti consentono all'app di diventare un'app isolata, ma può continuare a essere eseguita come app Win32 nei sistemi operativi in cui l'isolamento delle app Win32 non è supportato.

  • In <Application> sostituire qualsiasi punto di ingresso/trustlevel/comportamento di runtime esistente con EntryPoint="Windows.FullTrustApplication"uap18:EntryPoint="Isolated.App"uap18:TrustLevel="appContainer" uap18:RuntimeBehavior="appSilo".

  • Nelle <Application> estensioni rimuovere uno EntryPoints=* o Executable=* come quelli ereditati dall'elemento padre <Application>

  • Aggiungere desktop7:Scope="user" all'elemento di estensione per windows.protocol.

    Nota

    Per impostazione predefinita, Visual Studio verrà aggiunto <rescap:Capability name="runFullTrust"> automaticamente a <Capabilities> causa del fatto che l'app è un pacchetto Win32. Questa operazione deve essere rimossa a meno che l'app non abbia altre estensioni manifeste che possono influire sullo stato globale dell'utente, ad esempio comServer o FirewallRules, perché richiedono la runFullTrust funzionalità.

Screenshot che mostra la configurazione dell'app per la creazione di pacchetti in Visual Studio

  • Aggiungere <AppxOSMaxVersionTestedReplaceManifestVersion>false</AppxOSMaxVersionTestedReplaceManifestVersion> nel file wapproj subito dopo le righe della versione della piattaforma di destinazione Screenshot che mostra la configurazione del file di progetto in Visual Studio

Passaggio 5: Compilare e pubblicare pacchetti di app

Compilare la soluzione di Visual Studio.

Screenshot che mostra la compilazione della soluzione in Visual Studio

Pubblicare il pacchetto dell'app usando la procedura guidata Crea pacchetti app.

Screenshot che mostra la creazione guidata pacchetti di app in Visual Studio

Screenshot che mostra il passaggio di creazione nella procedura guidata pacchetti dell'app in Visual Studio

Dopo la pubblicazione dei pacchetti dell'app, il percorso di output visualizzato mostra la directory radice in cui il pacchetto MSIX viene pubblicato per versione. Aprire nella cartella version per trovare il file Install.ps1 per l'installazione dell'app.

Screenshot che mostra che la creazione del pacchetto è stata creata correttamente dalla procedura guidata in Visual Studio

Panoramica dell'isolamento dell'app

Profiler delle funzionalità dell'applicazione

Creazione del pacchetto di un'app Win32 isolata con MSIX