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
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.
Attendere che il campo "MSIX Packaging Tool Driver" termini il controllo.
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.
Immettere le informazioni sul pacchetto.
Passare attraverso il programma di installazione Win32 come di consueto
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.
Ripetere lo stesso processo se sono presenti servizi nel pacchetto.
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.
Convertire un'app MSIX esistente per l'esecuzione isolata
Selezionare l'opzione all'estrema destra "Editor pacchetti" e passare al file con estensione msix e fare clic sul pulsante "Apri pacchetto".
Scorrere verso il basso fino alla sezione "File manifesto" e fare clic su "Apri file".
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
aIgnorableNamespaces
alla fine dell'elemento<Package>
.
- Aggiungere
- Aggiungere
xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10"
all'elemento<Package>
se non è già presente.- Aggiungere
uap10
aIgnorableNamespaces
alla fine dell'elemento<Package>
.
- Aggiungere
- In
<Dependencies>
modificareTargetDeviceFamily
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 conuap10:TrustLevel="appContainer" previewsecurity2:RuntimeBehavior="appSilo"
. - Nelle
<Application>
estensioni rimuovere unoEntryPoints=*
oExecutable=*
come quelli ereditati dall'elemento padre<Application>
- Aggiungere
desktop7:Scope="user"
all'elemento di estensione perwindows.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 esempiocomServer
oFirewallRules
, perché richiedono larunFullTrust
funzionalità.- Aggiungere
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
-
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 in
Application and Services/Microsoft/Windows/AppxPackagingOM/Microsoft-Windows-AppxPackaging/Operational
- Se si verificano errori con il manifesto, è possibile trovare un messaggio di errore più interattivo in Visualizzatore eventi in
Per informazioni sull'identificazione delle funzionalità che potrebbero essere necessarie nel manifesto del pacchetto dell'applicazione, vedere Profiler delle funzionalità dell'applicazione.
Argomenti correlati
Panoramica dell'isolamento delle app Win32
Profiler delle funzionalità dell'applicazione
Creazione del pacchetto di un'applicazione di isolamento app Win32 con Visual Studio