Condividi tramite


Creazione del pacchetto di un'app Win32 isolata con MSIX

La creazione di pacchetti di un'applicazione MSIX o Win32 esistente in un'applicazione di isolamento dell'app Win32 verrà eseguita tramite MSIX Packaging Tool (MPT). Si noti che la versione di MPT che supporta l'isolamento dell'app Win32 è v1.2023.517.0, disponibile negli asset di versione di questo progetto. La versione dello Store di MPT è obsoleta ai fini della funzionalità di isolamento dell'app Win32. La documentazione aggiuntiva per MPT è disponibile qui.

È possibile trovare il download per MPT, nonché il profiler, nella sezione delle versioni del repository GitHub relativo all'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.

Convertire un programma di installazione Win32 esistente in un'app MSIX

  1. Selezionare "Pacchetto applicazione" all'estrema sinistra e scegliere dove verrà creato il pacchetto. Questo flusso seguirà l'opzione "Crea pacchetto in questo computer".

    Nota

    Questo comporterà l'installazione dell'app come normale app Win32 dopo aver completato il passaggio 5.

    Screenshot che mostra la pagina principale di MSIX Packaging Tool

  2. Attendere che il campo "MSIX Packaging Tool Driver" termini il controllo.

    Screenshot che mostra la pagina Crea nuovo pacchetto di MSIX Packaging Tool

  3. Usare il pulsante Sfoglia per passare a e selezionare il programma di installazione Win32. Lasciare vuota la preferenza di firma perché sarà necessario modificare il manifesto e firmarlo di nuovo.

    Screenshot che mostra la pagina Seleziona programma di installazione in MSIX Packaging Tool

  4. Immettere le informazioni sul pacchetto.

    Screenshot che mostra la pagina Informazioni pacchetto in MSIX Packaging Tool

  5. Passare attraverso il programma di installazione Win32 come di consueto

  6. Se sono presenti punti di ingresso aggiuntivi oltre a quello principale, avviarli o sfogliarli. Se l'app dispone di opzioni per l'associazione di tipi di file nelle impostazioni/configurazione/preferenze, attivarle in questo passaggio in modo che MSIX rilevi tali impostazioni.

  7. Ripetere lo stesso processo se sono presenti servizi nel pacchetto.

  8. Se si fa clic su Crea, il pacchetto verrà salvato come pacchetto di attendibilità totale. Fare clic sul pulsante "Editor pacchetti" per passare al flusso "Editor pacchetti" dal menu principale. Questa operazione può richiedere fino a diversi minuti a seconda delle dimensioni del pacchetto.

    Screenshot che mostra la pagina finale Crea pacchetto durante la creazione di un pacchetto in MSIX Packaging Tool

Convertire un'app MSIX esistente per l'esecuzione isolata

  1. Selezionare l'opzione all'estrema destra "Editor pacchetti" e passare al file con estensione msix e fare clic sul pulsante "Apri pacchetto".

    Screenshot che mostra la pagina principale prima di fare clic su Apri pacchetto in MSIX Packaging Tool

  2. Scorrere verso il basso fino alla sezione "File manifesto" e fare clic su "Apri file".

    Screenshot che mostra la pagina Informazioni pacchetto dopo aver fatto clic su Apri pacchetto in MSIX Packaging Tool

    Nel manifesto sarà 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:previewsecurity2="http://schemas.microsoft.com/appx/manifest/preview/windows10/security/2" all'elemento <Package> se non è già presente.
      • Aggiungere previewsecurity2 a IgnorableNamespaces alla fine dell'elemento <Package> .
    • Aggiungere xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10" all'elemento <Package> se non è già presente.
      • Aggiungere uap10 a IgnorableNamespaces alla fine dell'elemento <Package> .
    • In <Dependencies> modificare TargetDeviceFamily in <TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.25357.0" MaxVersionTested="10.0.25357.0" />.

      Nota

      Non tutte le funzionalità sono disponibili nella build minima, vedere le note sulla versione per informazioni più dettagliate.

    • In <Application> sostituire qualsiasi punto di ingresso/trustlevel/runtimebehavior esistente con uap10:TrustLevel="appContainer" previewsecurity2: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, MPT 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 il contenuto del file manifesto dell'app

  3. L'app potrebbe richiedere funzionalità aggiuntive per funzionare correttamente ora che è stata isolata.

    Queste funzionalità aggiungono direttamente funzionalità alle app isolate.

    • isolatedWin32-print - Stampare documenti
    • isolatedWin32-sysTrayIcon - Visualizzare le notifiche da Systray
    • isolatedWin32-shellExtensionContextMenu - Visualizzare voci di menu di scelta rapida basate su COM
    • isolatedWin32-promptForAccess - Richiedere agli utenti l'accesso ai file
    • isolatedWin32-accessToPublisherDirectory - Accesso alle directory che terminano con l'ID editore

    Queste funzionalità consentono l'accesso minimo alle librerie, ad esempio il runtime MSVC o altre DLL di Windows/3rd Party per le applicazioni che non supportano la richiesta.

    • isolatedWin32-dotNetBreadcrumbStore
    • isolatedWin32-profilesRootMinimal
    • isolatedWin32-userProfileMinimal
    • isolatedWin32-volumeRootMinimal
  4. Salvare e chiudere la finestra del manifesto. Se sono presenti errori nel manifesto, MPT li visualizzerà. Selezionare Crea/Salva per generare il file con estensione msix. Questa operazione può richiedere alcuni minuti a seconda delle dimensioni del pacchetto

    • Se si verificano errori con il manifesto, è possibile trovare un messaggio di errore più interattivo in Visualizzatore eventi inApplication and Services/Microsoft/Windows/AppxPackagingOM/Microsoft-Windows-AppxPackaging/Operational
  5. Per informazioni sull'identificazione delle funzionalità che potrebbero essere necessarie nel manifesto del pacchetto dell'applicazione, vedere Profiler delle funzionalità dell'applicazione.

Panoramica dell'isolamento delle app Win32

Profiler delle funzionalità dell'applicazione

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