가상화된 응용 프로그램이 있는 가상 환경에서 로컬로 설치된 응용 프로그램 실행

적용 대상:

  • Windows 7 SP1
  • Windows 10
  • Windows 11
  • Windows Server 2012 R2
  • Windows Server 2016

Microsoft Application Virtualization(App-V)을 사용하여 가상화된 애플리케이션과 함께 가상 환경에서 로컬로 설치된 애플리케이션을 실행할 수 있습니다. 다음과 같은 경우 이 작업을 수행할 수 있습니다.

  • 클라이언트 컴퓨터에서 로컬로 애플리케이션을 설치하고 실행하려고 하지만 해당 로컬 애플리케이션에서 작동하는 특정 플러그 인을 가상화하고 실행하려고 합니다.

  • App-V 클라이언트 패키지 문제를 해결하고 App-V 가상 환경 내에서 로컬 애플리케이션을 열려고 합니다.

App-V 가상 환경 내에서 로컬 애플리케이션을 열려면 다음 방법 중 일부를 사용합니다.

각 메서드는 기본적으로 동일한 작업을 수행하지만 일부 메서드는 가상화된 애플리케이션이 이미 실행 중인지 여부에 따라 다른 방법보다 일부 애플리케이션에 더 적합할 수 있습니다.

RunVirtual 레지스트리 키

패키지 또는 연결 그룹의 가상 환경에 로컬로 설치된 애플리케이션을 추가하려면 다음 섹션에 설명된 대로 레지스트리 편집기 레지스트리 키에 하위 키를 RunVirtual 추가합니다.

이 레지스트리 키를 관리하는 데 사용할 수 있는 그룹 정책 설정이 없습니다. 따라서 Microsoft Intune 또는 Configuration Manager, 다른 ESD(전자 소프트웨어 배포) 시스템을 사용하거나 레지스트리를 수동으로 편집해야 합니다.

App-V 5.0 SP3부터 RunVirtual을 사용하는 경우 패키지를 전역적으로 또는 사용자에게 게시할 수 있습니다.

하위 키를 만드는 단계

  1. 다음 표의 정보를 사용하여 실행 파일의 이름(예: MyApp.exe)을 사용하여 새 레지스트리 키를 만듭니다.

    • 전역적으로 게시됨: 레지스트리 키를 만듭니 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual 다.

      예를 들어 를 만듭니다 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual\MyApp.exe.

    • 사용자에게 게시됨: 레지스트리 키를 만듭니 HKEY_CURRENT_USER\SOFTWARE\Microsoft\AppV\Client\RunVirtual 다.

      예를 들어 를 만듭니다 HKEY_CURRENT_USER \SOFTWARE\Microsoft\AppV\Client\RunVirtual\MyApp.exe.

    • 연결 그룹은 다음과 같습니다.

      • 전역적으로 또는 사용자에게만 게시된 패키지
      • 전역적으로 그리고 사용자에게 게시되는 패키지

      HKEY_LOCAL_MACHINE 또는 HKEY_CURRENT_USER 키를 사용합니다. 그러나 다음 조건을 모두 충족해야 합니다.

      • 가상 환경에 여러 패키지를 포함하려면 사용하도록 설정된 연결 그룹에 포함해야 합니다.

      • 연결 그룹의 패키지 중 하나에 대해 하나의 하위 키만 만듭니다. 예를 들어 전역적으로 게시된 패키지와 사용자에게 게시되는 다른 패키지가 있습니다. 이러한 패키지 중 하나에 대한 하위 키를 만들지만 둘 다 만들지는 않습니다. 패키지 중 하나에 대해서만 하위 키를 만들지만 연결 그룹의 모든 패키지와 로컬 애플리케이션은 가상 환경에서 사용할 수 있습니다.

      • 하위 키를 만드는 키는 패키지에 사용한 게시 방법과 일치해야 합니다.

        예를 들어 패키지를 사용자에게 게시한 경우 아래에 HKEY_CURRENT_USER\SOFTWARE\Microsoft\AppV\Client\RunVirtual하위 키를 만들어야 합니다. 두 하이브 아래에 동일한 애플리케이션에 대한 키를 추가하지 마세요.

  2. 새 레지스트리 하위 키의 값을 패키지의 PackageId 및 VersionId로 설정하고 값을 밑줄로 구분합니다.

    구문: <PackageId>_<VersionId>

    : 4c909996-afc9-4352-b606-0b74542a09c1_be463724-Oct1-48f1-8604-c4bd7ca92fa

    이전 예제의 애플리케이션은 다음 예제와 같이 레지스트리 내보내기 파일(.reg 파일)을 생성합니다.

    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 Windows PowerShell cmdlet

Start-AppVVirtualProcess cmdlet을 사용하여 패키지 이름을 검색한 다음 지정된 패키지의 가상 환경 내에서 프로세스를 시작할 수 있습니다. 이 메서드를 사용하면 패키지가 현재 실행 중인지 여부에 관계없이 App-V 패키지의 컨텍스트 내에서 모든 명령을 시작할 수 있습니다.

다음 예제 구문을 사용하고 패키지 <Package>이름을 로 대체합니다.

$AppVName = Get-AppvClientPackage <Package>

Start-AppvVirtualProcess -AppvClientObject $AppVName cmd.exe

패키지의 정확한 이름을 모르는 경우 명령줄 Get-AppvClientPackage YourExecutable를 사용할 수 있습니다. 여기서 YourExecutable 은 애플리케이션의 이름입니다. 예를 들어 를 입력합니다 Get-AppvClientPackage Word.

명령줄 스위치 /appvpid:<PID>

모든 명령에 스위치를 /appvpid:<PID> 적용할 수 있습니다. 이 명령을 사용하면 해당 PID(프로세스 ID)를 지정하여 선택한 가상 프로세스 내에서 해당 명령을 실행할 수 있습니다. 이 메서드를 사용하면 이미 실행 중인 실행 파일과 동일한 App-V 환경에서 새 실행 파일이 시작됩니다.

예제: cmd.exe /appvpid:8108

App-V 프로세스의 PID(프로세스 ID)를 찾으려면 관리자 권한 명령 프롬프트에서 명령 tasklist.exe 실행합니다.

명령줄 후크 스위치 /appvve:<GUID>

이 스위치를 사용하면 App-V 패키지의 가상 환경 내에서 로컬 명령을 실행할 수 있습니다. 가상 환경이 이미 실행되고 있어야 하는 /appvid 스위치와 달리 이 스위치를 사용하면 가상 환경을 시작할 수 있습니다.

구문: cmd.exe /appvve:<PACKAGEGUID_VERSIONGUID>

예제: cmd.exe /appvve:aaaaaaaa-bbbb-cccc-dddd-eeeeeeee_11111111-2222-3333-4444-55555555

애플리케이션의 패키지 GUID 및 버전 GUID를 얻으려면 Get-AppvClientPackage cmdlet을 실행합니다. /appvve 스위치를 다음과 연결합니다.

  • 콜론

  • 원하는 패키지의 패키지 GUID

  • 밑줄

  • 원하는 패키지의 버전 ID

패키지의 정확한 이름을 모르는 경우 명령줄 Get-AppvClientPackage YourExecutable을 사용합니다. 여기서 YourExecutable 은 애플리케이션의 이름입니다. 예를 들어 를 입력합니다 Get-AppvClientPackage Word.

이 메서드를 사용하면 패키지가 현재 실행 중인지 여부에 관계없이 App-V 패키지의 컨텍스트 내에서 모든 명령을 시작할 수 있습니다.

App-V에 대한 기술 참조