Condividi tramite


Collegamento app da Visual Studio

Questo articolo illustra come creare pacchetti pronti per App Attach usando Visual Studio 2022 e pubblicarlo in Desktop virtuale Azure.

Che cos'è App Attach?

MSIX App Attach è un modo per distribuire applicazioni MSIX a macchine virtuali e fisiche. Tuttavia, MSIX App Attach è diverso dal normale MSIX perché è fatto soprattutto per i prodotti supportati, ad esempio Desktop virtuale Azure.

Perché App Attach?

Le aziende preferiscono App Attach per:

  1. Gestione semplificata delle immagini di Windows
  2. Migliore gestibilità delle app, tra cui costi di manutenzione inferiori e maggiore sicurezza

I dati dell'app in streaming si spostano con l'utente. In questo modo è possibile eseguire immediatamente le app e continuare l'esperienza ovunque si trovino.

Local App Attach consente di eseguire applicazioni MSIX senza installarle nel dispositivo. Le API che alimentano Local App Attach sono completamente supportate in Windows 11 Enterprise e Windows 10 Enterprise, integrate nel sistema operativo per montare e smontare le applicazioni. È anche possibile usare i cmdlet o gli script di PowerShell per automatizzare il processo.

Passaggi preliminari

  • Scaricare e installare Visual Studio 2022.
  • Configurare Visual Studio per C#.
  • Configurare il carico di lavoro "Sviluppo di Azure" in Visual Studio seguendo questa procedura:
    • Aprire il programma di installazione di Visual Studio
    • Fare clic su Modifica
    • Assicurarsi che lo sviluppo di Azure sia selezionato
    • Fare clic su Modifica nella parte inferiore per avviare l'aggiornamento.

Estensione di Visual Studio

  • Distribuzione di Desktop virtuale Azure funzionante. Per informazioni su come distribuire Desktop virtuale Azure (versione classica), vedere Creare un tenant in Desktop virtuale Azure. Per informazioni su come distribuire Desktop virtuale Azure con l'integrazione di Azure Resource Manager, vedere Creare un pool di host con il portale di Azure.

  • Ottenere l'estensione da Visual Studio Marketplace passando qui o cercando "App Attach Toolkit".

  • Installare l'estensione in Visual Studio facendo doppio clic sul file scaricato in precedenza.

Screenshot 2023-10-11 180059

  • Verificare che il sistema sia connesso a Internet.

Annotazioni

Questa estensione è compatibile solo con Visual Studio 2022.

Uso dell'estensione

Dopo aver installato l'estensione in Visual Studio 2022,

  1. Avviare Visual Studio in modalità con privilegi elevati facendo clic con il pulsante destro del mouse e scegliendo "Esegui come amministratore".
  2. Creare un'app desktop WinUI 3 C# o C++ usando il modello di progetto App vuota, In pacchetto (WinUI 3 in Desktop) di Visual Studio fornito con Windows App SDK.

Screenshot 2023-05-30 165600

Annotazioni

Il processo di creazione di immagini MSIX è supportato solo per le app WinUI3 a questo punto.

  1. Nell'Esplora soluzioni, fare clic con il pulsante destro del mouse sul progetto e scegliere Pacchetto e pubblica ->Crea pacchetti app di collegamento

Screenshot 2023-05-30 165836

  1. A questo punto è possibile configurare il pacchetto selezionando un percorso di output per il pacchetto MSIX e il file VHDx e selezionando la piattaforma preferita.
  2. Affinché un pacchetto MSIX venga installato nel computer di un utente finale, deve essere firmato con un certificato attendibile nel computer. È possibile selezionare un certificato dall'archivio certificati locale, selezionare un file di certificato o creare un nuovo certificato. Informazioni su come firmare il pacchetto dell'app qui.

Screenshot 2023-10-11 181102

Funzionalità dell'estensione

L'estensione consentirà agli sviluppatori di creare pacchetti pronti per il collegamento di app, testare il collegamento dell'app in locale o pubblicarlo nel pool di host AVD direttamente da Visual Studio.

È consigliabile scegliere l'opzione appropriata e procedere.

Immagine dell'utente

Creare solo un'immagine disco

In questo modo verrà creata un'immagine disco pronta per App Attach della tua app, ma non verrà pubblicata da nessuna parte. Può essere usato per trasferire o pubblicare manualmente altrove. È possibile passare al percorso della cartella di output specificato per accedere all'immagine.

Collegamento app locale

Verrà creato un pacchetto pronto per App Attach e lo pubblicherà in locale per il test e la risoluzione dei problemi.

Consente di risparmiare il lavoro di collegamento all'host AVD per i test. Gli utenti possono installare l'app ed espellere il disco dopo il test.

Collegamento app di Azure (AVD)

Si creerà un pacchetto pronto per App Attach e lo pubblicherà nel pool di host AVD.

  1. Per pubblicare il pacchetto App Attach in Desktop virtuale Azure, selezionare l'opzione Azure.

Annotazioni

Questa estensione consente solo la pubblicazione nelle risorse di Azure esistenti.

  1. Seleziona i valori seguenti:
  • IDsottoscrizione: scegliere la sottoscrizione di Azure da usare per la distribuzione.
  • Gruppo di risorse : usando l'elenco a discesa, selezionare un nome di gruppo di risorse esistente.
  • Account di archiviazione – Seleziona il nome dell'account di archiviazione in cui è stata distribuita la condivisione file.
  • Condivisione file : selezionare una condivisione file nella distribuzione di Desktop virtuale Azure in cui verrà archiviato il pacchetto.
  • Gruppo di applicazioni: selezionare il gruppo di applicazioni in cui pubblicare le app.
  • Area di lavoro : selezionare il nome dell'area di lavoro a cui si vuole assegnare un gruppo di applicazioni.
  • Pool di host: selezionare il nome del pool di host per il gruppo di applicazioni.

Screenshot 2023-10-11 182632

  1. Fare clic su Pubblica per pubblicare il pacchetto nella distribuzione di Desktop virtuale Azure precedente.

Domande frequenti (FAQ)

D1: Perché la preparazione ha avuto esito negativo in Local App Attach, mostrando errori?
A1: Il motivo principale dell'errore del processo di staging è l'assenza di dipendenze necessarie per MSIX sul computer. Per risolvere questo problema, esaminare attentamente i log di App Attach, che forniscono informazioni dettagliate sulle dipendenze specifiche necessarie per continuare.

D2: Desktop virtuale Azure: verifica riuscita di App Attach, ma l'app non si avvia
A2: Il problema principale è l'assenza di dipendenze MSIX nella macchina virtuale di Azure. Per risolvere questo problema, identificare le dipendenze necessarie dai log di App Attach e assicurarsi che siano installate nella(e) VM designata(e).

D3: Errore: Disco virtuale non trovato nel <percorso> di condivisione file?
A3: questo errore si verifica in genere quando la condivisione file viene disconnessa da tutte le macchine virtuali. Per risolvere questo problema, accedere alla macchina virtuale allocata e assicurarsi che la condivisione file pertinente sia connessa alla macchina virtuale. Successivamente, si dovrebbe essere in grado di montare e smontare correttamente i file VHDx.

D4: Ho eseguito l'accesso a Visual Studio tramite più account, quale verrà utilizzato per il collegamento dell'app AVD?
A4: Per App Attach AVD, assicurarsi che solo l'utente amministratore AVD sia connesso a Visual Studio. Rimuovere tutti gli altri account prima di avviare il menu dell'estensione. Inoltre, accedere nuovamente a Visual Studio se le credenziali sono scadute.

D5: L'estensione modifica la soluzione?
A5: Sì, l'estensione crea la cartella AppAttachPackages e appattach.config il file a livello radice della soluzione. La cartella AppAttachPackages contiene artefatti MSIX e VHDx, mentre il file appattach.config contiene i metadati dell'applicazione cruciali per il processo di App Attach. È possibile ignorare questi elementi in modo sicuro.

D6: È possibile usare l'estensione per ripubblicare l'artefatto dell'applicazione in AVD?
A6: No, questa funzionalità non è attualmente supportata. Tuttavia, è possibile aumentare la versione e tentare di ripubblicare. Tenere presente che ciò comporterà due app distinte nell'applicazione Desktop remoto. È anche possibile contrassegnare la versione precedente come inattiva nella sezione Pool di host -> Pacchetti MSIX tramite il portale di Azure.

D7: Come si disinstalla un'applicazione collegata in locale?
A7: fare clic con il pulsante destro del mouse sull'app nella barra di ricerca e selezionare Disinstalla. Inoltre, espelli la nuova unità aggiunta a Questo PC. Per una rimozione completa, avviare PowerShell in modalità amministratore ed eseguire il comando seguente:

$msixPackageFullName = <msixPackageFullName> 
Remove-AppxPackage $msixPackageFullName -PreserveRoamableApplicationData 

D8: Il mio processo sta superando il tempo limite durante l'esecuzione.
A8: in appattach.configindividuare il <tag ProcessTimeOut> e aumentare il valore di timeout. Il valore predefinito è 600 secondi (10 minuti) ed è possibile modificarlo in base alle esigenze.

Vedere anche