Ausführen einer lokal installierten Anwendung in einer virtuellen Umgebung mit virtualisierten Anwendungen
Letzte Aktualisierung: Dezember 2014
Betrifft: Application Virtualization 5.0, Application Virtualization 5.0 SP1, Application Virtualization 5.0 SP2, Application Virtualization 5.0 SP3
Sie können eine lokal installierte Anwendung in einer virtuellen Umgebung zusammen mit Anwendungen ausführen, die mit Microsoft Application Virtualization (App-V) virtualisiert wurden. Möglicherweise möchten Sie dies in folgenden Fällen tun:
Sie möchten eine Anwendung lokal auf Clientcomputern installieren und ausführen, bestimmte Plug-Ins sollen jedoch virtualisiert und mit dieser lokalen Anwendung zusammen ausgeführt werden.
Sie möchten ein Problem mit dem App-V-Clientpaket beheben und eine lokale Anwendung in der virtuellen App-V-Umgebung öffnen.
Öffnen Sie eine lokale Anwendung in der virtuellen App-V-Umgebung mithilfe einer der folgenden Methoden:
RunVirtual-Registrierungsschlüssel
Get-AppvClientPackage PowerShell-Cmdlet
Befehlszeilenschalter /appvpid:<PID<
Befehlszeilenhookschalter /appvve:<GUID<
Jede Methode erfüllt im Wesentlichen die gleiche Aufgabe, einige Methoden sind jedoch möglicherweise für einige Anwendungen besser geeignet, je nachdem, ob die virtualisierte Anwendung bereits ausgeführt wird.
RunVirtual-Registrierungsschlüssel
Um eine lokal installierte Anwendung zu einem Paket oder der virtuellen Umgebung einer Verbindungsgruppe hinzuzufügen, fügen Sie einen Unterschlüssel zum RunVirtual
-Registrierungsschlüssel im Registrierungseditor hinzu, wie in den folgenden Abschnitten beschrieben.
Es ist keine Gruppenrichtlinieneinstellung für die Verwaltung dieses Registrierungsschlüssels verfügbar, so dass Sie System Center Configuration Manager oder ein anderes elektronisches Softwareverteilungssystem (ESD) verwenden müssen, oder die Registrierung manuell bearbeiten müssen.
Unterstützte Methoden der Veröffentlichung von Paketen bei der Verwendung von RunVirtual
App-V-Version | Unterstützte Veröffentlichungsmethoden |
---|---|
App-V 5.0 SP3 |
Global oder für den Benutzer veröffentlicht |
App-V 5.0 über App-V 5.0 SP2 |
Nur global veröffentlicht |
Schritte zum Erstellen des Unterschlüssels
Erstellen Sie mithilfe der Informationen in der folgenden Tabelle einen neuen Registrierungsschlüssel mit dem Namen der ausführbaren Datei, z. B. MyApp.exe.
Paketveröffentlichungsmethode Ort, an dem Schlüssel erstellt werden soll Global veröffentlicht
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual
Beispiel: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual\MyApp.exe
Für den Benutzer veröffentlicht
HKEY_CURRENT_USER\SOFTWARE\Microsoft\AppV\Client\RunVirtual
Beispiel: HKEY_CURRENT_USER \SOFTWARE\Microsoft\AppV\Client\RunVirtual\MyApp.exe
Verbindungsgruppe kann Folgendes enthalten:
- Pakete, die nur global oder nur für den Benutzer veröffentlicht werden
- Pakete, die global und für den Benutzer veröffentlicht werden
Entweder den HKEY_LOCAL_MACHINE- oder HKEY_CURRENT_USER-Schlüssel, eine der folgenden Aussagen muss jedoch zutreffen:
- Wenn Sie mehrere Pakete in die virtuelle Umgebung einschließen möchten, müssen Sie diese in eine aktivierte Verbindungsgruppe einschließen.
- Erstellen Sie nur einen Unterschlüssel für eines der Pakete in der Verbindungsgruppe. Wenn Sie beispielsweise ein Paket haben, das global veröffentlicht, und ein anderes Paket, das für den Benutzer veröffentlicht wurde, erstellen Sie einen Unterschlüssel für eines dieser Pakete, jedoch nicht für beide. Obwohl Sie einen Unterschlüssel für nur eines der Pakete erstellen, stehen alle Pakete in der Verbindungsgruppe sowie die lokale Anwendung in der virtuellen Umgebung zur Verfügung.
- Der Schlüssel, unter dem Sie den Unterschlüssel erstellen, muss mit der Veröffentlichungsmethode übereinstimmen, die Sie für das Paket verwendet haben.
Wenn Sie beispielsweie das Paket für den Benutzer veröffentlicht haben, müssen Sie den Unterschlüssel unterHKEY_CURRENT_USER\SOFTWARE\Microsoft\AppV\Client\RunVirtual
erstellen.
- Pakete, die nur global oder nur für den Benutzer veröffentlicht werden
Legen Sie den Wert des neuen Registrierungsunterschlüssels auf die Paket-ID und die Version-ID des Pakets fest, und trennen Sie dabei die Werte mit einem Unterstrich.
Syntax: <PaketId>_<VersionsId>
Beispiel: 4c909996-afc9-4352-b606-0b74542a09c1_be463724-Oct1-48f1-8604-c4bd7ca92fa
Die Anwendung im vorherigen Beispiel erzeugt wie folgt eine Registrierungsexportdatei (REG-Datei):
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual] @="" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual\MyApp.exe] @="aaaaaaaa-bbbb-cccc-dddd-eeeeeeee_11111111-2222-3333-4444-555555555
Get-AppvClientPackage PowerShell-Cmdlet
Mit dem Start-AppVVirtualProcess-Cmdlet können Sie den Paketnamen abrufen, und dann einen Prozess innerhalb der virtuellen Umgebung für das angegebene Paket starten. Mit dieser Methode können Sie alle Befehle innerhalb des Kontexts eines App-V-Pakets starten, unabhängig davon, ob das Paket zurzeit ausgeführt wird.
Verwenden Sie die folgende Beispielsyntax, und ersetzen Sie den Namen des Pakets für <Package>:
$AppVName = Get-AppvClientPackage <Package>
Start-AppvVirtualProcess -AppvClientObject $AppVName cmd.exe
Wenn Sie den genauen Namen des Pakets nicht kennen, können Sie die Befehlszeile Get-AppvClientPackage *executable* verwenden, wobei executable der Name der Anwendung ist, beispielsweise: Get-AppvClientPackage *Word*.
Befehlszeilenschalter /appvpid:<PID<
Sie können die /appvpid:<PID>-Option für jeden Befehl verwenden, wodurch dieser Befehl innerhalb eines virtuellen Prozesses ausgeführt wird, den Sie durch die Prozess-ID (PID) angeben. Mit dieser Methode wird die neue ausführbare Datei in der gleichen App-V-Umgebung wie die ausführbare Datei gestartet, die bereits ausgeführt wird.
Beispiel: cmd.exe /appvpid:8108
Um die Prozess-ID (PID) des App-V-Prozesses zu finden, führen Sie den Befehl tasklist.exe an einer Eingabeaufforderung mit erhöhten Rechten aus.
Befehlszeilenhookschalter /appvve:<GUID<
Mit dieser Option können Sie einen lokalen Befehl in der virtuellen Umgebung eines App-V-Pakets ausführen. Im Gegensatz zu der /appvid-Option, bei der die virtuelle Umgebung bereits ausgeführt werden muss, kann die virtuelle Umgebung mithilfe dieser Option gestartet werden.
Syntax: cmd.exe /appvve:<PACKAGEGUID_VERSIONGUID>
Beispiel: cmd.exe /appvve:aaaaaaaa-bbbb-cccc-dddd-eeeeeeee_11111111-2222-3333-4444-55555555
Führen Sie das Get-AppvClientPackage-Cmdlet aus, um die Paket-GUID und die Versions-GUID der Anwendung abzurufen. Verketten Sie die /appvve-Option mit dem Folgenden:
Ein Doppelpunkt
Paket-GUID des gewünschten Pakets
Ein Unterstrich
Versions-ID des gewünschten Pakets
Wenn Sie den genauen Namen des Pakets nicht kennen, können Sie die Befehlszeile Get-AppvClientPackage *executable* verwenden, wobei executable der Name der Anwendung ist, beispielsweise: Get-AppvClientPackage *Word*.
Mit dieser Methode können Sie alle Befehle innerhalb des Kontexts eines App-V-Pakets starten, unabhängig davon, ob das Paket zurzeit ausgeführt wird.
Haben Sie einen Vorschlag für App-V?
Fügen Sie hier Vorschläge hinzu, oder stimmen Sie über Vorschläge ab. Verwenden Sie bei Problemen mit App-V das App-V-TechNet-Forum.
Siehe auch
Weitere Ressourcen
Technische Referenz zu App-V 5.0
-----
Sie erfahren mehr zu MDOP in der TechNet Library, können im TechNet-Wiki nach Problemlösungen suchen oder uns auf Facebook und Twitter folgen.
-----