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

  1. 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 unter HKEY_CURRENT_USER\SOFTWARE\Microsoft\AppV\Client\RunVirtual erstellen.

  2. 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.
-----