App Attach über Visual Studio
In diesem Artikel wird erläutert, wie App-Attach-bereite Pakete mit Visual Studio 2022 erstellt und in Azure Virtual Desktop veröffentlicht werden.
Was genau ist App Attach?
MSIX App Attach bietet eine Möglichkeit, MSIX-Anwendungen auf physischen und virtuellen Computern bereitzustellen. MSIX App Attach unterscheidet sich von MSIX insofern, als es speziell für unterstützte Produkte wie Azure Virtual Desktop entwickelt wurde.
Was spricht für App Attach?
App Attach bietet Unternehmen folgende Vorteile:
- Einfachere Verwaltung von Windows-Images
- Bessere Verwaltbarkeit von Apps, einschließlich geringerer Wartungskosten und höherer Sicherheit
Die Daten gestreamter Apps begleiten Benutzer unterwegs. So können sie Apps sofort ausführen und überall nutzen.
Mit Local App Attach können Sie MSIX-Anwendungen ausführen, ohne sie auf dem Gerät zu installieren. Die APIs, die Locale App Attach nutzen, werden unter Windows 11 Enterprise und Windows 10 Enterprise vollständig unterstützt. Diese sind in das Betriebssystem integriert sind, um Anwendungen bereitzustellen und die Bereitstellung aufzuheben. Sie können auch PowerShell-Cmdlets oder Skripts verwenden, um den Prozess zu automatisieren.
Voraussetzungen
- Laden Sie Visual Studio 2022 herunter, und installieren Sie es.
- Richten Sie Visual Studio für C# ein.
- Konfigurieren Sie die Workload „Azure-Entwicklung“ in Visual Studio, indem Sie Folgendes verwenden:
- Visual Studio-Installer öffnen
- Klicken Sie auf Ändern.
- Stellen Sie sicher, dass Azure-Entwicklung ausgewählt ist
- Klicken Sie unten auf Ändern, um das Update zu initiieren.
Eine funktionierende Azure Virtual Desktop-Bereitstellung. Informationen zur Bereitstellung von Azure Virtual Desktop (klassisch) finden Sie unter Erstellen eines Mandanten in Azure Virtual Desktop. Informationen zum Bereitstellen von Azure Virtual Desktop mit Azure Resource Manager-Integration finden Sie unter Erstellen eines Hostpools mit dem Azure-Portal.
Rufen Sie die Erweiterung hier im Visual Studio Marketplace ab, oder suchen Sie dort nach „App Attach Toolkit“.
Installieren Sie die Erweiterung in Visual Studio, indem Sie auf die oben heruntergeladene Datei doppelklicken.
- Stellen Sie sicher, dass das System mit dem Internet verbunden ist.
Hinweis
Diese Erweiterung ist nur mit Visual Studio 2022 kompatibel.
Verwenden der Erweiterung
Nachdem Sie die Erweiterung in Visual Studio 2022 installiert haben, gehen Sie wie folgt vor:
- Starten Sie Visual Studio im Modus mit erhöhten Rechten, indem Sie mit der rechten Maustaste klicken und „Als Administrator ausführen“ wählen.
- Erstellen Sie eine WinUI 3-C#- oder -C++-Desktop-App mit der Visual-Studio-Projektvorlage Leere App, gepackt (WinUI 3 in Desktop), die im Lieferumfang des Windows App SDK enthalten ist.
Hinweis
Die Erstellung von MSIX-Images wird derzeit nur für WinUI3-Apps unterstützt.
- Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und wählen Sie Verpacken und veröffentlichen –>App-Attach-Pakete erstellen.
- Jetzt können Sie das Paket konfigurieren, indem Sie einen Ausgabespeicherort für das MSIX-Paket und die VHDx-Datei sowie die gewünschte Plattform auswählen.
- Damit ein MSIX-Paket auf dem Computer eines Endbenutzers installiert werden kann, muss es mit einem Zertifikat signiert werden, das auf dem Computer vertrauenswürdig ist. Sie können ein Zertifikat aus Ihrem lokalen Zertifikatspeicher auswählen, eine Zertifikatdatei auswählen oder ein neues Zertifikat erstellen. Hier erfahren Sie, wie das App-Paket signiert wird.
Merkmale der Erweiterung
Mit der Erweiterung können Entwickler App-Attach-bereite Pakete erstellen, App Attach lokal testen oder direkt über Visual Studio in AVD-Hostpool veröffentlichen.
Sie sollten die entsprechende Option wählen und fortfahren.
Nur Datenträgerimage erstellen
Hiermit wird ein App-Attach-bereites Datenträgerimage der App erstellt, aber nirgendwo veröffentlicht. Dies ermöglicht eine manuelle Übertragung oder eine Veröffentlichung an anderer Stelle. Sie können zum angegebenen Ausgabeordner wechseln, um auf das Image zuzugreifen.
Lokales App Attach
Hiermit wird ein App-Attach-bereites Paket erstellt und lokal zum Testen und zur Problembehandlung veröffentlicht.
Dadurch entfällt der Aufwand für das Anfügen an den AVD-Host für Tests. Benutzer können die App installieren und den Datenträger nach dem Testen auswerfen.
Azure (AVD) App Attach
Hiermit wird ein App-Attach-bereites Paket erstellt und im AVD-Hostpool veröffentlicht.
- Um das App-Attach-Paket in Azure Virtual Desktop zu veröffentlichen, wählen Sie die Azure-Option aus.
Hinweis
Diese Erweiterung ermöglicht ausschließlich die Veröffentlichung in vorhandenen Azure-Ressourcen.
- Wählen Sie die folgenden Werte aus:
- Abonnement-ID: Wählen Sie das Azure-Abonnement, das für die Bereitstellung verwendet werden soll.
- Ressourcengruppe – Wählen Sie im Dropdownmenü den Namen einer vorhandenen Ressourcengruppe aus.
- Speicherkonto – Wählen Sie den Namen des Speicherkontos mit der bereitgestellten Dateifreigabe aus.
- Dateifreigabe – Wählen Sie eine Dateifreigabe in der Bereitstellung von Azure Virtual Desktop aus, in der das Paket gespeichert werden soll.
- Anwendungsgruppe – Wählen Sie die Anwendungsgruppe aus, in der die Apps veröffentlicht werden sollen.
- Arbeitsbereich – Wählen Sie den Namen des Arbeitsbereichs aus, dem Sie eine Anwendungsgruppe zuweisen möchten.
- Hostpool – Wählen Sie den Namen des Hostpools für die Anwendungsgruppe aus.
- Klicken Sie auf „Veröffentlichen“, um das Paket in der oben genannten Bereitstellung von Azure Virtual Desktop zu veröffentlichen.
Häufig gestellte Fragen (FAQs)
F1: Warum ist das Staging im lokalen App Attach mit Fehlern fehlgeschlagen?
A1: Der Hauptgrund für Staging-Fehler ist das Fehlen von Abhängigkeiten, die für MSIX auf dem Computer erforderlich sind. Um Abhilfe zu schaffen, überprüfen Sie sorgfältig die App-Attach-Protokolle, die detaillierte Informationen zu den spezifischen, für das Fortfahren erforderlichen Abhängigkeiten enthalten.
F2: Azure Virtual Desktop: erfolgreiche App-Attach-Überprüfung, trotzdem wird die App nicht gestartet.
A2: Das Hauptproblem in diesem Zusammenhang ist das Fehlen von MSIX-Abhängigkeiten auf dem virtuellen Azure-Computer. Um Abhilfe zu schaffen, ermitteln Sie die erforderlichen Abhängigkeiten in den App-Attach-Protokollen. Stellen Sie sicher, dass sie in den festgelegten virtuellen Computern installiert sind.
F3: Fehler: Der virtuelle Datenträger wurde am <Speicherort der Dateifreigabe> nicht gefunden.
A3: Dieser Fehler tritt in der Regel auf, wenn die Dateifreigabe von allen virtuellen Computern getrennt ist. Um Abhilfe zu schaffen, melden Sie sich beim zugewiesenen virtuellen Computer an. Stellen Sie sicher, dass die entsprechende Dateifreigabe mit dem virtuellen Computer verbunden ist. Anschließend sollten Sie in der Lage sein, VHDx-Dateien erfolgreich bereitzustellen und deren Bereitstellung aufzuheben.
F4: Ich habe mich über mehrere Konten in Visual Studio angemeldet, welches soll für AVD App Attach gewählt werden?
A4: Stellen Sie für AVD App Attach sicher, dass nur der AVD-Administratorbenutzer bei Visual Studio angemeldet ist. Entfernen Sie alle anderen Konten, bevor Sie das Erweiterungsmenü starten. Melden Sie sich außerdem erneut bei Visual Studio an, wenn die Anmeldeinformationen abgelaufen sind.
F5: Ändert die Erweiterung meine Projektmappe?
A5: Ja, die Erweiterung erstellt den Ordner „AppAttachPackages“ und die Datei appattach.config
auf der Stammebene der Projektmappe. Der Ordner „AppAttachPackages“ enthält MSIX- und VHDX-Artefakte, während die Datei appattach.config
Anwendungsmetadaten enthält, die für den App-Attach-Prozess wichtig sind. Diese Elemente können Sie gefahrlos ignorieren.
F6: Kann ich die Erweiterung nutzen, um mein Anwendungsartefakt erneut in AVD zu veröffentlichen?
A6: Nein, diese Funktionalität wird derzeit nicht unterstützt. Sie können jedoch die Version erhöhen und die Neuveröffentlichung versuchen. Beachten Sie, dass dies zu zwei unterschiedlichen Apps in der Remotedesktop-Anwendung führt. Darüber hinaus können Sie die vorherige Version im Abschnitt „Hostpool –> MSIX-Pakete“ über die Azure-Portal als inaktiv kennzeichnen.
F7: Wie deinstalliere ich eine lokal angefügte Anwendung?
A7: Klicken Sie in der Suchleiste mit der rechten Maustaste auf die App, und wählen Sie „Deinstallieren“ aus. Werfen Sie außerdem das neue Laufwerk aus, das Ihrem PC hinzugefügt wurde. Zur umfassenden Entfernung starten Sie PowerShell im Administratormodus, und führen Sie den folgenden Befehl aus:
$msixPackageFullName = <msixPackageFullName>
Remove-AppxPackage $msixPackageFullName -PreserveRoamableApplicationData
F8: Bei meinem Prozess kommt es während der Ausführung zu einem Timeout.
A8: Suchen Sie in appattach.config
nach dem Tag <ProcessTimeOut>, und erhöhen Sie den Timeoutwert. Der Standardwert beträgt 600 Sekunden (10 Minuten). Diesen können Sie Ihren Anforderungen entsprechend anpassen.