Come creare pacchetti MSIX: packaging moderno per Windows

  • MSIX offre un modello di packaging moderno, affidabile e pulito che sostituisce EXE, MSI e AppX, con disinstallazioni senza residui e aggiornamenti controllati.
  • MSIX Packaging Tool consente di convertire i programmi di installazione esistenti (MSI, EXE, App-V, ClickOnce o script) in pacchetti MSIX, catturando l'installazione in un ambiente preparato.
  • Visual Studio e MakeAppx.exe semplificano la creazione, la firma e la convalida di pacchetti e bundle avanzati, tra cui il caricamento di file per Microsoft Store e progetti di packaging complessi.
  • I contenitori MSIX App Attach e VHD/CIM integrano le applicazioni MSIX in ambienti desktop virtuali, mantenendo le immagini leggere e le applicazioni disaccoppiate.

Come creare pacchetti MSIX

Se lavori con applicazioni desktop su Windows e stai ancora distribuendo tutto con i classici programmi di installazione EXE o MSI, è il momento di dare un'occhiata a MSIX come formato di packaging modernoNon solo migliora l'installazione e la disinstallazione, ma semplifica anche gli aggiornamenti, la distribuzione di massa e l'integrazione con l'attuale ecosistema Windows, sia in locale che nel cloud.

In questa guida vedrai, passo dopo passo, Come creare pacchetti MSIX in Windows Da diverse prospettive: utilizzando MSIX Packaging Tool, con Visual Studio, con progetti di packaging avanzati tramite MakeAppx.exe e anche come tutto ciò si adatti a scenari come l'aggiunta di app MSIX in ambienti virtuali. L'obiettivo è acquisire una comprensione pratica e completa di come confezionare, firmare, convalidare e distribuire le applicazioni.

Cos'è MSIX e perché vale la pena utilizzarlo?

MSIX è il formato moderno di installazione e confezionamento per le applicazioni Windows Microsoft lo ha progettato come evoluzione naturale di EXE, MSI e AppX. Combina i vantaggi degli installer tradizionali con la filosofia dei contenitori delle app moderne, dando vita a installazioni più affidabili, pulite e prevedibili.

A differenza di un classico programma di installazione EXE o MSI, un pacchetto MSIX è si installa in un contenitore controllatoCon regole chiare su dove può scrivere file e chiavi di registro. Questo garantisce che quando l'utente disinstalla l'applicazione, tutto ciò che le appartiene venga rimosso, senza lasciare tracce sul sistema che potrebbero ingombrarlo nel tempo.

MSIX eredita i concetti di App-V e del modello UWP, ma senza costringerti a passare attraverso Microsoft Store o a rifare completamente i tuoi progetti. È possibile convertire le applicazioni Win32, WPF o Windows Forms esistenti (e in molti casi senza toccare il codice) in un pacchetto MSIX che puoi distribuire con strumenti come Intune, Configuration Manager, script di PowerShell o anche facendo doppio clic sul file.

Un altro vantaggio fondamentale è che MSIX è progettato per ottimizzare la larghezza di banda e lo spazio di archiviazioneUtilizza blocchi da 64 KB, evita la duplicazione dei file tra le applicazioni e supporta gli aggiornamenti differenziali, in modo che vengano scaricate solo le modifiche: ideale se si distribuisce software dal cloud o su più macchine in rete.

Inoltre, Microsoft offre un SDK che consente di lavorare con MSIX. su altri sistemi operativi come iOS, macOS, Android, Linux o versioni precedenti di WindowsCiò apre le porte a scenari di distribuzione multipiattaforma che utilizzano lo stesso modello di packaging.

Requisiti e strumenti necessari per creare pacchetti MSIX

Come creare pacchetti Windows MSIX

Per iniziare a creare correttamente i pacchetti MSIX, è importante avere ben chiaro quali strumenti si utilizzeranno e in quale ambiente. Il minimo necessario è Windows 10 versione 1809 o successiva, oppure Windows 11e autorizzazioni di amministratore sulla macchina su cui si esegue la conversione.

L'utilità chiave per il confezionamento di applicazioni desktop esistenti è Strumento di packaging MSIXPuoi installarlo dal Microsoft Store (opzione consigliata) oppure offline scaricando il pacchetto e configurandolo con PowerShell. È disponibile anche tramite WinGet con un semplice comando come:

winget install “Strumento di confezionamento MSIX” consentire installare rapidamente lo strumento di packaging MSIX Dalla riga di comando, a condizione che sia configurato il client del pacchetto e che sia disponibile un account compatibile con Store quando necessario.

Oltre al Packaging Tool, lo troverai molto utile se sviluppi applicazioni moderne o gestisci progetti esistenti. Visual Studio 2019 o 2022 con i carichi di lavoro appropriati (ad esempio, "Sviluppo desktop con C++" o ".NET per desktop") ed estensioni correlate a MSIX. Visual Studio include procedure guidate per la generazione di pacchetti e il caricamento di file per lo Store.

Negli scenari più avanzati, entra in gioco quanto segue MakeAppx.exeL'utilità ufficiale da riga di comando per la compilazione di pacchetti AppX/MSIX e dei relativi bundle a partire da un progetto di packaging XML. Questo strumento consente di automatizzare la creazione di pacchetti complessi con più componenti e risorse.

Infine, se lavori con Windows Virtual Desktop o Azure Virtual Desktop, o vuoi eseguire applicazioni in contenitori VHD o CIM, ti interesserà sapere Collegamento dell'app MSIX e strumenti di terze parti come MSIX Hero o la community AppVentiX, oltre a MSIX Manager Tool per generare contenitori di dischi virtuali con i tuoi pacchetti.

Utilizzo di MSIX Packaging Tool: convertire i programmi di installazione esistenti

Lo strumento di packaging MSIX è progettato in modo da poter riqualificare gli installatori esistenti (MSI, EXE, App-V 5.x, ClickOnce e persino installazioni manuali o basate su script) in un pacchetto MSIX senza bisogno del codice sorgente originale. È particolarmente utile per i team IT che desiderano modernizzare il proprio catalogo software senza riscrivere le applicazioni.

Quando avvii lo strumento per la prima volta, ti verrà chiesto il consenso per inviare dati di telemetria. I dati diagnostici sono limitati al comportamento dello strumento stesso. e non vengono utilizzati per identificarti o contattarti. Una volta che l'invio della telemetria è stato accettato (o meno), puoi scegliere tra creare un pacchetto applicativo, creare un pacchetto di modifica o aprire l'editor dei pacchetti.

L'opzione più utilizzata è creare un pacchetto applicativoQuesto flusso ti guida dalla preparazione dell'ambiente alla creazione del file MSIX, partendo da un programma di installazione MSI, EXE, App-V, ClickOnce, uno script di installazione o anche un processo manuale in cui esegui i passaggi che faresti in una normale installazione.

Lo strumento di packaging supporta tre modalità di conversione: creazione di pacchetti sul computer locale, su un computer remoto o su una macchina virtuale Hyper-V locale. Se lavori già in un ambiente pulito (Senza troppi programmi e servizi che potrebbero generare rumore), la prassi usuale è quella di selezionare l'opzione per creare il pacchetto sulla stessa macchina. Se si preferisce isolare il processo o si dispone di un ambiente di test già configurato, è possibile connettersi a una macchina virtuale o a una macchina remota dedicata.

Nel caso di macchine virtuali locali, tieni presente che Sono supportate solo le VM Hyper-VSe si utilizza una piattaforma di virtualizzazione diversa, sarà necessario utilizzare la modalità macchina remota per connettersi a tale macchina ed eseguire l'acquisizione da lì.

Preparare la macchina di conversione

Come creare pacchetti Windows MSIX

Prima di iniziare ad acquisire un programma di installazione, è consigliabile preparare l'ambiente per ridurre al minimo le interferenzeMSIX Packaging Tool include una schermata "Prepara computer" in cui è possibile lasciare la macchina in uno stato ideale per il processo di packaging.

Da un lato, lo strumento controlla se il Driver dello strumento di packaging MSIX Il software necessario per l'acquisizione è installato e abilitato. Utilizza DISM per verificarlo e, se rileva che è mancante o disabilitato, tenterà di abilitarlo automaticamente. Se riscontri errori, ti consigliamo di consultare la documentazione per la risoluzione dei problemi e, se il problema persiste, segnalalo tramite Windows Feedback Hub.

Un altro punto importante è che lo strumento disabilitare temporaneamente Windows Update durante il confezionamento per impedire che vengano registrate modifiche non correlate all'installazione dell'applicazione, come aggiornamenti di sistema o aggiornamenti di altre app.

La casella "Riavvio in sospeso" viene utilizzata come indicatore che sono presenti operazioni di sistema in attesa di un riavvio. Il riavvio non è forzato.Tuttavia, si consiglia di farlo manualmente se Windows segnala la presenza di modifiche in sospeso e quindi riavviare lo strumento per lavorare con un ambiente pulito.

Inoltre, è possibile disabilitare facoltativamente servizi come Windows Search o il servizio di Host SMS Dalla stessa schermata, selezionando le caselle corrispondenti e utilizzando l'opzione "Disabilita selezionati". Lo strumento stesso aggiornerà lo stato a "Disabilitato" al termine dell'operazione, sebbene questi passaggi non siano obbligatori.

Una volta regolati questi parametri e verificato che il l'ambiente è prontoBasta cliccare su “Avanti” per procedere alla fase di selezione del programma di installazione che si desidera convertire.

Selezionare il programma di installazione da impacchettare e firmare il pacchetto.

Nella schermata successiva definisci quale programma di installazione catturerà lo strumento e come si comporterà durante il processo. Qui è possibile specificare direttamente il file MSI, EXE, App-V, ClickOnce o la riga di comando di uno script, oppure lasciare il campo vuoto e avviare l'installazione manualmente quando lo strumento inizia il monitoraggio.

Se scegli un MSIIl Packaging Tool può leggere il contenuto del pacchetto e popolare automaticamente molti dei campi del manifesto MSIX, con un notevole risparmio di tempo in seguito. Se si utilizzano trasformazioni MST o patch MSP, è possibile specificarle come argomenti nel campo dei parametri del programma di installazione.

Nel caso degli installatori App-V 5.1Il processo è ancora più semplice. Basta selezionare il file App-V e lo strumento tradurrà il manifesto in formato MSIX, portandovi quasi immediatamente alla schermata di creazione del pacchetto. Tuttavia, le versioni App-V 4.x non sono supportate in questo flusso di lavoro ed è consigliabile iniziare con il programma di installazione originale.

a EXE e ClickOnceLo strumento non ha un formato standard per l'estrazione dei metadati, quindi sarà necessario inserire manualmente le informazioni del pacchetto (nome, editore, ecc.) in passaggi successivi. Ciononostante, rimangono completamente convertibili, purché il programma di installazione si comporti in modo ragionevolmente prevedibile.

Se quello che hai è un script di installazione In alternativa, se preferisci eseguire l'installazione manualmente, puoi specificare lo script dalla riga di comando oppure lasciare il campo vuoto ed eseguire tutto manualmente durante la fase di installazione, mentre lo strumento acquisisce le modifiche al sistema.

Questa stessa schermata consente di configurare il preferenze della firma del pacchettoMSIX richiede che il pacchetto sia firmato per poterlo installare, quindi puoi scegliere tra Device Guard Signing (un servizio Microsoft basato su Azure AD), il tuo certificato .pfx, un file .cer per convalidare la corrispondenza dell'editore o l'opzione di non firmare in questo momento (utile se intendi firmare in un'altra fase della pipeline).

Se scegli un certificato .pfx, dovrai Andare al file e immettere la password. Se è protetto. Con Device Guard Signing, accederai con un account Active Directory configurato per questo servizio e delegherai l'operazione di firma a Microsoft. Si consiglia inoltre vivamente di includere un URL di timestamp (RFC 3161) in modo che la firma rimanga valida anche se il certificato scade.

Compila le informazioni sul pacchetto MSIX

Una volta configurate le preferenze di installazione e firma, lo strumento chiede di completare la informazioni sull'identità del pacchettoQuesti campi determinano il modo in cui il sistema operativo vede la tua applicazione, come viene aggiornata e come verrà visualizzata all'utente finale.

El Nome del pacchetto È obbligatorio e corrisponde all'identificatore interno del pacchetto nel manifesto. Non viene visualizzato all'utente, distingue tra maiuscole e minuscole, non ammette spazi e deve contenere da 3 a 50 caratteri alfanumerici, inclusi trattini e punti. Inoltre, Non può terminare con un punto né coincidere con nomi riservati. come CON, PRN, AUX, NUL, COM1-COM9 o LPT1-LPT9.

El Nome visualizzato del pacchetto Sì, è visibile all'utente nel menu Start e nelle pagine Impostazioni, quindi dovrebbe essere descrittivo e intuitivo. Può contenere da 1 a 256 caratteri e supporta le traduzioni se si lavora con più lingue.

El Nome dell'editore Deve essere conforme a un nome distintivo (DN) e, cosa molto importante, Deve corrispondere all'oggetto del certificato. con cui si firma il pacchetto. Accetta una stringa piuttosto lunga (fino a 8192 caratteri) e segue una specifica espressione regolare con campi come CN, O, OU, C, ecc., nello stile dei certificati X.509.

Puoi anche definire un Visualizza il nome dell'editoreQuesto è il testo leggibile che l'utente vedrà nel programma di installazione dell'applicazione e nelle opzioni di sistema. Questo campo, come il nome visualizzato del pacchetto, supporta fino a 256 caratteri e può essere tradotto.

La Versione del pacchetto Utilizza la notazione quadrupla "Major.Secondary.Build.Revision". Ogni volta che si rilascia un aggiornamento, è necessario incrementare questa versione, poiché Windows la utilizza per determinare se un'installazione è nuova o un aggiornamento di una esistente.

La Descrizione Il nome del pacchetto è facoltativo, ma utile per documentare internamente lo scopo dell'applicazione o per visualizzare testo esplicativo nell'interfaccia di installazione.

Campo Luogo di installazione Definisci il percorso in cui il programma di installazione copierà il payload dell'applicazione, solitamente all'interno di "Programmi". Questo è facoltativo, ma consigliato se l'app è installata al di fuori della cartella predefinita. Assicurati che il percorso sia corretto. Ciò corrisponde a ciò che fa l'installatore durante la cattura, in modo che il pacchetto rifletta correttamente la struttura del file.

Infine, hai la scatola per Aggiungi supporto per MSIX CoreCiò consente al pacchetto di funzionare su versioni precedenti di Windows che non supportano nativamente MSIX, selezionando da un elenco a discesa la versione minima di Windows che si desidera supportare con MSIX Core.

Fase di installazione e acquisizione dell'applicazione

Come creare pacchetti Windows MSIX

Una volta completata la configurazione dell'identità, il Packaging Tool avvia il fase di installazione monitorataDa questo momento in poi, tutto ciò che fai per installare e configurare l'applicazione verrà registrato e diventerà parte del pacchetto MSIX.

Lo strumento avvia il programma di installazione nell'ambiente scelto (macchina locale, VM o remoto) e dovresti seguire i suoi passaggi come faresti normalmente, scegliendo la lingua, i componenti, il percorso di installazione, ecc. È importante che Il percorso di installazione corrisponde a quello dichiarato in precedenza nelle informazioni sulla confezione per evitare incongruenze.

Se l'applicazione ha bisogno di creare collegamenti, in particolare uno sul desktop o nel menu Start, è meglio farlo durante questa fase in modo che Lo strumento può catturare i punti di ingresso correttiAllo stesso modo, se il software ha dei prerequisiti (framework, runtime, .NET 3.5 o 2.0, componenti aggiuntivi), dovresti installarli ora.

Lo strumento consente di eseguire più programmi di installazione o script Mentre la cattura è attiva, puoi sfruttarla per impacchettare contemporaneamente più pezzi che fanno parte della stessa soluzione.

Se il processo di installazione richiede un riavvio del sistema, è possibile utilizzare il pulsante "Riavvia" dello strumento o riavviarlo manualmente. Al successivo accesso, il Packaging Tool riprenderà il processo e riprenderà il flusso di conversione esattamente dal punto in cui era stato interrotto.

Quando pensi che il prima installazione e configurazione Una volta completata l'applicazione, fare clic su "Avanti" per procedere alla gestione delle attività iniziali.

Gestione del primo avvio e servizi all'interno del pacchetto

Sullo schermo primo lancioLo strumento elenca gli eseguibili rilevati durante l'installazione. Si consiglia di aprire l'applicazione principale almeno una volta per acquisire le attività di configurazione iniziale, la creazione del profilo, la generazione delle cartelle utente, ecc.

Seleziona il file eseguibile e clicca su "Esegui" per avviarlo. Se sono presenti più file eseguibili, puoi selezionare quello che desideri eseguire. punto di ingresso principale. Puoi anche rimuovere le voci non necessarie che non si desidera esporre all'utente come applicazioni separate, utilizzando l'opzione "Rimuovi".

Se per qualche motivo l'eseguibile principale non appare nell'elenco, è possibile naviga manualmente verso la tua posizioneEseguitelo e poi aggiornate l'elenco per registrarlo. Questa flessibilità consente di adattare il pacchetto ad applicazioni con alberi binari complessi.

Quando passi alla schermata successiva, lo strumento ti chiederà Conferma di aver completato l'installazione e la configurazione del primo avvioSe scegli "Sì, vai avanti", il flusso continua; se rispondi "No, non ho finito", tornerai alla schermata precedente per avviare altre app, copiare file o apportare le modifiche necessarie.

A partire dalla versione 1.2019.1220.0, il Packaging Tool incorpora un rapporto sui serviziSe durante la conversione ha rilevato servizi registrati dall'installatore, li visualizzerà raggruppati in due tabelle: "Inclusi" (pronti per il pacchetto) ed "Esclusi" (quelli che richiedono informazioni aggiuntive o non sono supportati).

Facendo doppio clic su un servizio potrai visualizzare e, in alcuni campi, modificare i dati come nome visualizzato, descrizione, account di avvio, tipo di avvio (automatico, manuale o disabilitato), argomenti e dipendenze. Il nome della chiave e il percorso dell'immagine, tuttavia, non sono modificabili perché fanno parte della definizione del servizio essenziale.

Dopo aver esaminato queste informazioni, puoi decidere se sposta un servizio fisso nell'elenco incluso Oppure puoi ometterlo se non vuoi includerlo nel bundle. Questo è molto utile per controllare quali servizi accompagnano effettivamente l'applicazione finale ed evitare sorprese in produzione.

Creazione e modifica del pacchetto finale

Nella fase finale dello strumento di confezionamento si sceglie il posizione in cui salvare il file MSIX generatoPer impostazione predefinita, viene utilizzata la cartella dati dell'applicazione locale dello strumento, ma è possibile selezionare qualsiasi altro percorso più comodo per il proprio flusso di lavoro.

Se vuoi anche generare un file modello di conversioneQuesta funzionalità è molto utile per ripetere conversioni future della stessa applicazione con modifiche minori; è possibile specificare un percorso di salvataggio diverso per il file. Si noti che per generare questo modello, è necessario aver specificato un programma di installazione all'inizio del processo.

Prima di premere il pulsante "Crea", puoi inserire il editor di pacchetti per rivedere e modificare il contenuto o le proprietà del file MSIX acquisito. Da lì, è possibile modificare il manifesto, i percorsi, i file inclusi, le voci dell'applicazione, le risorse visive e altri dettagli avanzati.

Al termine della creazione apparirà una finestra pop-up che indica il percorso esatto del pacchetto generatoCon un collegamento diretto per aprire la cartella, nonché la posizione dei log dello strumento nella directory LocalState. Da lì è possibile chiudere lo strumento, testare l'installazione o continuare a perfezionare il pacchetto con l'editor.

Creazione di pacchetti MSIX da Visual Studio

Quando si sviluppano applicazioni moderne o si migrano progetti su Windows App SDK e WinUI 3, Visual Studio semplifica notevolmente il processo di creazione dei pacchetti. Il file chiave è Package.appxmanifest, un XML che definisce l'identità, le capacità, le associazioni, le icone e il modo in cui l'app si integra con il sistema.

Dal designer del manifesto di Visual Studio, è possibile configurare tutto senza modificare manualmente il codice XML: icone, orientamenti dello schermo, funzionalità di sistema (fotocamera, rete, posizione, ecc.), associazioni di file, protocolli personalizzati e altro ancora. Ogni scheda del designer raggruppa opzioni correlate e link alla documentazione, se necessario.

Nella scheda Risorse visive Definisci i loghi e le immagini che verranno utilizzati nel menu Start, nella barra delle applicazioni, nell'elenco delle app e nelle notifiche popup. È importante specificare le dimensioni richieste da Windows (44, 150, 310 e altre varianti) in modo che l'applicazione risulti nitida a qualsiasi scala.

Nella scheda imballaggio Inserisci i dettagli di pubblicazione e scegli quale certificato verrà utilizzato per firmare MSIX. Ogni app inclusa nel pacchetto deve essere firmata e, affinché l'utente possa installarla senza avvisi, il certificato deve essere considerato attendibile dal computer dell'utente (installato nello store appropriato o emesso da una CA riconosciuta).

Si piensas Distribuisci l'applicazione tramite Microsoft StoreÈ possibile associare il progetto a un'app dello Store direttamente da Visual Studio tramite il menu Pubblica > Associa app allo Store. In questo modo i campi del packaging vengono sincronizzati automaticamente con i dati registrati nel Partner Center.

Per creare un pacchetto, fai clic con il pulsante destro del mouse sul progetto confezionato (ad esempio, "App vuota, confezionata (WinUI 3 in Desktop)") e scegli Pubblica > Crea pacchetti app. La procedura guidata ti guiderà nella selezione se confezionare per il sideloading o per lo Store, il metodo di firma e architetture di destinazione (x86, x64, ARM).

Tipi di pacchetti applicativi e file di caricamento

Nell'ecosistema MSIX, esistono diversi tipi di file relativi al packaging, ognuno con il proprio ruolo. Il più elementare è pacchetto applicativo (.msix o .appx)Questo pacchetto contiene l'app e le sue risorse per un'architettura specifica, come x64 o x86. Se è necessario supportare più architetture, sarà necessario generare un pacchetto per ciascuna di esse.

Per semplificare la distribuzione multipiattaforma, ci sono pacchetti di applicazioni in bundle (.msixbundle o .appxbundle)Un bundle può contenere diversi pacchetti applicativi, ciascuno per un'architettura diversa (x86, x64, ARM). Il sistema sceglie automaticamente quello che corrisponde al dispositivo su cui è installato.

Quando vuoi inviare l'app a Microsoft Store, un file di caricamento del pacchetto applicativo (.msixupload o .appxupload)Questo file raggruppa uno o più bundle o pacchetti individuali insieme al file dei simboli (.appxsym) utilizzato per analizzare arresti anomali e prestazioni dal Partner Center.

Visual Studio può generare Questi file vengono caricati automaticamente Se scegli le opzioni di creazione del pacchetto Store nella procedura guidata, durante il processo di invio dovrai solo caricare il file .msixupload o .appxupload nel Partner Center.

Progettazione avanzata di packaging con MakeAppx.exe

Man mano che le tue applicazioni crescono in dimensioni e complessità, spesso vengono divise in vari pacchetti: principale, risorse, contenuti opzionali, DLC, ecc.Gestire tutto questo manualmente può essere un incubo, soprattutto se non si utilizza Visual Studio. Per queste situazioni, esiste il concetto di layout del pacchetto (PackagingLayout) supportato da MakeAppx.exe.

Il design di un packaging è un Documento XML che descrive la struttura completa di un'applicazione in pacchetti: famiglie di pacchetti, bundle, pacchetti principali, pacchetti di risorse, file contenuti in ciascuno di essi, filtri di inclusione/esclusione, ecc. Con un singolo file XML e una chiamata a MakeAppx è possibile compilare tutti i pacchetti necessari.

In un semplice esempio avresti un elemento Layout di imballaggio con uno Pacchetto Famiglia che funge da raggruppamento di applicazioni. Qui è possibile definire attributi come ManifestPath (percorso per l'AppxManifest di base), FlatBundle (se si desidera un bundle flat o classico), ResourceManager (se si utilizza MRT per le risorse) e persino un identificatore univoco per quella famiglia.

All'interno di PackageFamily è possibile definire un CONFEZIONE per il codice principale (specificando ProcessorArchitecture: x64, x86, arm o neutral) e uno o più Pacchetto di risorse Per contenuti aggiuntivi (ad esempio risorse multimediali), è possibile specificare AllowExecution=false in modo che il contenuto non richieda un'analisi antivirus così approfondita perché non contiene file eseguibili.

Attraverso l'elemento File e i suoi nodi File definiscono quali file sono inclusi in ciascun pacchetto: SourcePath indica dove si trovano i file nel sistema o nella rete, DestinationPath dove vengono posizionati all'interno del pacchetto e ExcludePath consente di escludere i file già selezionati da altri modelli. caratteri jolly singoli (*) e doppi (**) Consentono di selezionare ricorsivamente gruppi di file e persino di rinominarli al volo.

Appaiono anche in progetti avanzati Pacchetto di risorse Per i pacchetti localizzati, è possibile utilizzare i nodi Risorse e Risorsa per assegnare qualificatori di lingua, scala, ecc. e contrassegnarne uno come predefinito. È anche possibile definire PackageFamily contrassegnato come facoltativo, che rappresentano DLC o componenti aggiuntivi che possono essere installati separatamente, e l'attributo RelatedSet controlla se vengono aggiornati insieme al pacchetto principale.

Se hai già pacchetti precompilati che dovrebbero far parte di un raggruppamento, puoi farvi riferimento con Pacchetto precompilato, indicando semplicemente il percorso verso il file .msix, .appx o .appxbundle esistente in modo che MakeAppx ne tenga conto durante la creazione del bundle globale.

Per compilare utilizzando un progetto, esegui comandi come MakeAppx.exe build /f PackagingLayout.xml /op OutputPackages\Questo genera tutti i pacchetti descritti nell'XML. Facoltativamente, è possibile limitarsi a determinati componenti con /id, puntare a una versione precedente con /ip per riutilizzare i pacchetti che non cambiano e incrementare automaticamente le versioni con /iv.

Collegamento di app MSIX e contenitori VHD/CIM

Negli ambienti desktop virtuali, come Azure Virtual Desktop, l'uso di Collegamento dell'app MSIX, una tecnica per montare le applicazioni contenute nei pacchetti MSIX all'interno di contenitori VHD, VHDX o CIM, evitando di sovraccaricare l'immagine del sistema di base con decine di programmi.

L'idea è di mantenere un immagine di sistema il più pulita e piccola possibilee archiviare le applicazioni su dischi virtuali che vengono montati e associati alle sessioni utente in base alle esigenze. In questo modo è possibile "collegare" o "scollegare" le applicazioni senza reinstallare nulla sull'immagine principale.

Affinché ciò funzioni, è essenziale che i pacchetti MSIX siano firmato con un certificato di fiduciaEmesso da una CA interna o pubblica riconosciuta dai sistemi. Senza tale attendibilità, Windows non consentirà l'esecuzione dei pacchetti montati.

La creazione di un contenitore VHD da un file MSIX può essere eseguita in diversi modi. Microsoft offre Strumento di gestione MSIXCiò consente di estrarre il contenuto del pacchetto e di inserirlo in un disco virtuale, pronto per essere montato. Anche utility di terze parti come MSIX Hero o strumenti della community AppVentiX automatizzano questo processo e riducono la dipendenza dai moduli Hyper-V in PowerShell.

Una volta creato il VHD o il CIM, l'ambiente desktop virtuale viene configurato in modo che, al momento dell'accesso, Montare il disco e registrare l'app allegatain modo che l'utente lo veda installato senza occupare spazio nell'immagine di base. Questo approccio semplifica la gestione delle versioni, l'allocazione dinamica delle applicazioni e riduce i tempi di manutenzione.

Installazione, convalida e distribuzione dei pacchetti MSIX

Come creare pacchetti Windows MSIX

Un pacchetto MSIX può Installa con un semplice doppio clic Informazioni sul file .msix o .msixbundle. Si apre il programma di installazione dell'applicazione Windows, che mostra informazioni di base sul pacchetto, l'editore e un pulsante di installazione con una barra di avanzamento e messaggi di errore in caso di problemi.

Quando si generano pacchetti da Visual Studio, vengono creati anche script di PowerShell, come Aggiungi-AppDevPackage.ps1, situato in cartelle di tipo *_Test. L'esecuzione di questo script con "Esegui con PowerShell" consente di installare il pacchetto in modo assistito, il che è molto utile negli ambienti di test o di integrazione continua.

Prima di caricare qualsiasi cosa su Microsoft Store, è consigliabile eseguire il pacchetto tramite Kit di certificazione delle applicazioni Windows (WACK)Dalla procedura guidata di creazione del pacchetto di Visual Studio, puoi avviare WACK sul computer locale o anche su un dispositivo Windows 10 remoto, a condizione che sul computer siano installati gli strumenti remoti e il kit stesso.

Il WACK esegue un batteria di test (prestazioni, API utilizzate, comportamento in background, ecc.) e genera un report. Se l'app supera la certificazione, il pacchetto è pronto per essere inviato al Partner Center. Il file .appxupload o .msixupload si trova in genere nella cartella AppPackages della soluzione e il suo nome include la versione e le architetture supportate.

È anche possibile Automatizza gli invii allo Store da Visual Studio 2019 in poiSelezionando l'opzione per l'invio automatico a Microsoft Store dopo la convalida WACK, è necessario associare Azure Active Directory al proprio account Partner Center, creare o collegare un'applicazione Azure AD con il ruolo di amministratore e recuperare credenziali quali ID tenant, ID cliente e chiave cliente.

Configurando questi dati nella finestra di dialogo delle opzioni di spedizione, Visual Studio può avviare il processo di pubblicazione Dopo aver completato i test, puoi monitorare lo stato della spedizione dalla finestra "Verifica e pubblica", riducendo i passaggi manuali nella pipeline di distribuzione.

Con questo intero ecosistema di strumenti, flussi di lavoro e formati, MSIX diventa il pezzo centrale per il confezionamento, l'aggiornamento e la distribuzione delle applicazioni WindowsChe tu converta i programmi di installazione legacy con MSIX Packaging Tool, ti affidi a Visual Studio per nuovi sviluppi, organizzi pacchetti complessi con MakeAppx.exe o li distribuisca in ambienti virtuali utilizzando l'app attach, offriamo installazioni più pulite e controllate, pronte per il mondo ibrido del desktop locale e del cloud.

Come visualizzare le app aperte in Windows 11
Articolo correlato:
Windows App SDK: guida completa con tutto ciò che devi sapere