Condividi tramite


Panoramica del packaging

La creazione di pacchetti definisce il modo in cui l'app viene installata, aggiornata e integrata con Windows. Le app WinUI vengono incluse in un pacchetto per impostazione predefinita, mentre molte app desktop, ad esempio le applicazioni Win32 tradizionali, vengono eseguite senza pacchetti. Le app in pacchetto traggono vantaggio da un modello di installazione pulita, aggiornamenti automatici e accesso alle funzionalità di Windows che richiedono l'identità del pacchetto, incluse attività in background, notifiche, estensioni del menu di scelta rapida e altri punti di estendibilità. Le app non in pacchetto possono comunque accedere a molte funzionalità di Windows App SDK, ma potrebbero richiedere una configurazione aggiuntiva per abilitare determinate funzionalità.

Perché la creazione di pacchetti di app è importante

La creazione di pacchetti determina la modalità di installazione, aggiornamento, identificazione e integrazione dell'app con Windows. La scelta tra un'app in pacchetto o non in pacchetto influisce sulle funzionalità che è possibile usare, sul modello di distribuzione su cui si basa e sull'esperienza complessiva che i clienti ottengono. L'obiettivo di questa panoramica è aiutare a comprendere rapidamente i compromessi, in modo da poter scegliere il modello più adatto all'architettura e ai requisiti dell'app.

App confezionate e non confezionate

Applicazioni pacchettizzate

Le app in pacchetto usano MSIX e hanno un'identità del pacchetto, necessaria per molti punti di estendibilità di Windows, tra cui attività in background, notifiche, estensioni del menu di scelta rapida personalizzate e destinazioni di condivisione. L'identità del pacchetto consente a Windows di identificare in modo affidabile il chiamante delle API della piattaforma, motivo per cui queste funzionalità dipendono da essa. Per altre informazioni, vedere Funzionalità che richiedono l'identità del pacchetto.

  • Le app in pacchetto vengono in genere eseguite in un contenitore di app leggero con file system e virtualizzazione del Registro di sistema (vedere AppContainer per le app legacy e le app MSIX AppContainer).
  • Le app possono anche essere configurate per non essere eseguite in un contenitore di app, se necessario.
  • MSIX viene usato sia per la creazione di pacchetti che per l'installazione (vedere Che cos'è MSIX?).

Confezionato con localizzazione esterna

Alcune applicazioni desktop esistenti non sono ancora pronte per inserire tutti i loro contenuti all'interno di un pacchetto MSIX. La creazione di pacchetti con posizione esterna offre a queste app l'identità del pacchetto, consentendo al contempo che la maggior parte del contenuto rimanga all'esterno del pacchetto.

App non confezionate

Le app non in pacchetto non usano MSIX e non hanno un'identità del pacchetto, il che significa che non possono accedere alle funzionalità che lo richiedono.

  • Rimangono completamente senza restrizioni in termini di superficie API, accesso al file system, accesso al Registro di sistema, elevazione e modello di processo.
  • L'installazione e gli aggiornamenti si basano su .exe, .msi, programmi di installazione personalizzati, ClickOnce o xcopy.
  • Vedere Funzionalità che richiedono l'identità del pacchetto.

Confronto riepilogativo

Confezionato (contenitore di applicazioni opzionale) Pacchetto con percorso esterno/Senza pacchetto
Vantaggi principali Installazione/disinstallazione moderna, aggiornamenti automatici/incrementali, rimozione pulita senza artefatti rimasti, esperienza di Microsoft Store ottimizzata e accesso alle funzionalità che richiedono l'identità del pacchetto. Controllo completo del modello di processo, elevazione dei privilegi, IPC, accesso al registro e al file system. La creazione di pacchetti in posizione esterna consente di ottenere l'identità del pacchetto senza adottare completamente MSIX.
Limitazioni principali Alcuni scenari a livello di sistema non sono supportati (ad esempio, NT Services). Le opzioni IPC possono essere limitate, la pubblicazione dello Store limita l'accesso con privilegi elevati e la virtualizzazione si applica in molti casi (vedere Virtualizzazione flessibile). I criteri aziendali possono disabilitare gli aggiornamenti basati su Store. Maggiore rischio di file o configurazioni non aggiornati dopo la disinstallazione. L'installazione/aggiornamento deve essere gestito manualmente tramite .exe, .msi o meccanismi personalizzati. Le app non in pacchetto non dispongono di funzionalità che richiedono l'identità del pacchetto.

Importante

Per la maggior parte delle app, l'uso di MSIX e l'esecuzione in un contenitore di app offre l'esperienza di installazione e aggiornamento più semplice, sicura e moderna.

Per ulteriori dettagli sul percorso di installazione, la directory di lavoro, la virtualizzazione e il comportamento durante l'esecuzione, vedere
Informazioni sull'esecuzione delle app desktop in pacchetto in Windows.

Introduzione a MSIX

Se si compila un'app desktop Win32 (talvolta denominata app desktop classica) o un'app .NET, inclusi Windows Presentation Foundation (WPF) e Windows Form (WinForms), è possibile creare un pacchetto e distribuire l'app usando MSIX.

Altre tecnologie di installazione

È anche possibile creare un pacchetto e distribuire questi tipi di app usando altre tecnologie di installazione.