다음을 통해 공유


App-V 5.0 동적 구성 정보

동적 구성을 사용하여 사용자에 대한 App-V 5.0 패키지를 사용자 지정할 수 있습니다. 다음 정보를 사용하여 기존 동적 구성 파일을 만들거나 편집합니다.

동적 구성 파일을 편집할 때 사용자 또는 그룹에 대해 App-V 5.0 패키지가 실행되는 방식을 사용자 지정합니다. 이렇게 하면 원하는 설정을 사용하여 패키지를 다시 사용할 필요가 없어 패키지 사용자 지정에 보다 편리한 방법을 제공하고 패키지 콘텐츠와 사용자 지정 설정을 독립적으로 유지하는 방법을 제공합니다.

고급: 동적 구성

가상 애플리케이션 패키지에는 패키지에 대한 모든 핵심 정보를 제공하는 매니페스트가 포함되어 있습니다. 이 정보에는 패키지 설정에 대한 기본값이 포함되며 다른 사용자 지정 없이 가장 기본적인 형식으로 설정을 결정합니다. 특정 사용자 또는 그룹에 대해 이러한 기본값을 조정하려면 다음 파일을 만들고 편집할 수 있습니다.

  • 사용자 구성 파일

  • 배포 구성 파일

이전 .xml 파일은 패키지 설정을 지정하고 패키지에 직접 영향을 주지 않고 패키지를 사용자 지정할 수 있도록 허용합니다. 패키지를 만들면 시퀀서가 패키지 매니페스트 데이터를 사용하여 기본 배포 및 사용자 구성 .xml 파일을 자동으로 생성합니다. 따라서 이러한 자동으로 생성된 구성 파일은 단순히 시퀀싱 중에 구성한 방식과 마찬가지로 패키지에 포함된 기본 설정을 반영합니다. 시퀀서에서 생성된 양식의 패키지에 이러한 구성 파일을 적용하는 경우 패키지에는 해당 매니페스트에서 나온 것과 동일한 기본 설정이 있습니다. 이렇게 하면 기본값을 변경해야 하는 경우 시작할 패키지별 템플릿이 제공됩니다.

참고

다음 정보는 특정 사용자 또는 그룹 요구 사항을 충족하도록 패키지를 사용자 지정하기 위해 시퀀서 생성 구성 파일을 수정하는 데만 사용할 수 있습니다.

동적 구성 파일 콘텐츠

패키지의 매니페스트 정보에 지정된 기본값과 관련하여 구성 파일의 모든 추가, 삭제 및 업데이트를 수행해야 합니다. 다음 목록을 검토합니다.

  • 사용자 구성 .xml 파일
  • 배포 구성 .xml 파일
  • 패키지 매니페스트

이전 목록은 파일을 읽는 방법을 나타냅니다. 첫 번째 항목은 마지막으로 읽게 될 항목을 나타내므로 해당 콘텐츠가 우선합니다. 따라서 모든 패키지는 기본적으로 패키지 매니페스트의 기본 설정을 포함하고 제공합니다. 사용자 지정된 설정이 있는 배포 구성 .xml 파일이 적용되는 경우 패키지 매니페스트 기본값을 재정의합니다. 사용자 지정 설정이 있는 사용자 구성 .xml 파일이 이전에 적용된 경우 배포 구성과 패키지 매니페스트 기본값을 모두 재정의합니다.

다음 목록에서는 두 파일 형식에 대한 자세한 정보를 표시합니다.

  • UserConfig(사용자 구성 파일) - 패키지에 대한 사용자 지정 설정을 지정하거나 수정할 수 있습니다. 이러한 설정은 패키지가 App-V 5.0 클라이언트를 실행하는 컴퓨터에 배포될 때 특정 사용자에게 적용됩니다.

  • DeploymentConfig(배포 구성 파일) - 패키지의 기본 설정을 지정하거나 수정할 수 있습니다. 이러한 설정은 App-V 5.0 클라이언트를 실행하는 컴퓨터에 패키지를 배포할 때 모든 사용자에게 적용됩니다.

컴퓨터의 특정 사용자 집합에 대한 패키지 설정을 사용자 지정하거나 HKCU와 같은 로컬 사용자 위치에 적용되는 변경을 수행하려면 UserConfig 파일을 사용해야 합니다. 컴퓨터의 모든 사용자에 대한 패키지의 기본 설정을 수정하거나 전역 위치(예: HKEY_LOCAL_MACHINE 및 모든 사용자 폴더)에 적용되는 변경을 수행하려면 DeploymentConfig 파일을 사용해야 합니다.

UserConfig 파일은 클라이언트의 다른 사용자에게 영향을 주지 않고 단일 사용자에게 적용할 수 있는 구성 설정을 제공합니다.

  • 사용자당 네이티브 시스템에 통합되는 확장:- 바로 가기, File-Type 연결, URL 프로토콜, AppPaths, 소프트웨어 클라이언트 및 COM

  • 가상 하위 시스템:- 애플리케이션 개체, 환경 변수, 레지스트리 수정, 서비스 및 글꼴

  • 스크립트(사용자 컨텍스트에만 해당)

  • 관리 기관(App-V 4.6을 사용하여 패키지 공존 제어)

DeploymentConfig 파일은 컴퓨터 컨텍스트를 기준으로 하는 섹션과 위의 UserConfig 목록에 나열된 동일한 기능을 제공하는 사용자 컨텍스트에 상대적인 두 섹션의 구성 설정을 제공합니다.

  • 위의 모든 UserConfig 설정

  • 모든 사용자에 대해서만 전역적으로 적용할 수 있는 확장입니다.

  • 전역 컴퓨터 위치(예: 레지스트리)에 대해 구성할 수 있는 가상 하위 시스템입니다.

  • 제품 원본 URL

  • 스크립트(컴퓨터 컨텍스트에만 해당)

  • 자식 프로세스를 종료하는 컨트롤

파일 구조

App-V 5.0 동적 구성 파일의 구조는 다음 섹션에 설명되어 있습니다.

동적 사용자 구성 파일

헤더 - 동적 사용자 구성 파일의 헤더는 다음과 같습니다.

<?xml version="1.0" encoding="utf-8"?><UserConfiguration **PackageId**="1f8488bf-2257-46b4-b27f-09c9dbaae707" DisplayName="Reserved" xmlns="<https://schemas.microsoft.com/appv/2010/userconfiguration">

PackageId는 매니페스트 파일에 있는 것과 동일한 값입니다.

본문 - 동적 사용자 구성 파일의 본문에는 매니페스트 파일에 정의된 모든 앱 확장 지점과 가상 애플리케이션을 구성하는 정보가 포함될 수 있습니다. 본문에는 다음 네 개의 하위 섹션이 허용됩니다.

  1. 응용 프로그램
  2. 하위
  3. UserScripts
  4. 관리Authority

응용 프로그램

패키지 내의 매니페스트 파일에 포함된 모든 앱 확장명은 매니페스트 파일에 정의된 애플리케이션 ID로 할당됩니다. 이렇게 하면 패키지 내에서 지정된 애플리케이션에 대한 모든 확장을 사용하거나 사용하지 않도록 설정할 수 있습니다. 애플리케이션 ID는 매니페스트 파일에 있어야 합니다. 그렇지 않으면 무시됩니다.

<UserConfiguration **PackageId**="1f8488bf-2257-46b4-b27f-09c9dbaae707" DisplayName="Reserved" xmlns="<https://schemas.microsoft.com/appv/2010/userconfiguration">

<Applications>

<!-- No new application can be defined in policy. AppV Client will ignore any application ID that is not also in the Manifest file -->

<Application Id="{a56fa627-c35f-4a01-9e79-7d36aed8225a}" Enabled="false">

</Application>

</Applications>

...

</UserConfiguration>

하위

AppExtensions 및 기타 하위 시스템은 아래에 <Subsystems>하위 노드로 정렬됩니다.

<UserConfiguration **PackageId**="1f8488bf-2257-46b4-b27f-09c9dbaae707" DisplayName="Reserved" xmlns="<https://schemas.microsoft.com/appv/2010/userconfiguration">
  <Subsystems>
  ...
  </Subsystems>
  ...
</UserConfiguration>

특성을 사용하여 Enabled 각 하위 시스템을 사용/사용하지 않도록 설정할 수 있습니다. 다음은 다양한 하위 시스템 및 사용 샘플입니다.

확장:

일부 하위 시스템(확장 하위 시스템)은 확장을 제어합니다. 이러한 하위 시스템은 바로 가기, File-Type 연결, URL 프로토콜, AppPaths, 소프트웨어 클라이언트 및 COM입니다.

확장 하위 시스템은 콘텐츠와 독립적으로 사용하도록 설정하고 사용하지 않도록 설정할 수 있습니다. 바로 가기를 사용하도록 설정하면 클라이언트는 기본적으로 매니페스트에 포함된 바로 가기를 사용합니다. 각 확장 하위 시스템에는 노드가 <Extensions> 포함될 수 있습니다. 이 자식 요소가 있는 경우 클라이언트는 해당 하위 시스템에 대한 매니페스트 파일의 콘텐츠를 무시하고 구성 파일의 콘텐츠만 사용합니다.

바로 가기 하위 시스템을 사용하는 예제:

  1. 사용자가 동적 또는 배포 구성 파일에서 이를 정의한 경우 매니페스트의 콘텐츠는 무시됩니다.

    <Shortcuts  Enabled="true">
      <Extensions>
        ...
      </Extensions>
    </Shortcuts>
    
  2. 사용자가 다음 요소만 정의한 경우 매니페스트의 콘텐츠는 게시하는 동안 통합됩니다.

    <Shortcuts  Enabled="true"/>
    
  3. 사용자가 다음 요소를 정의하는 경우 매니페스트 내의 모든 바로 가기는 계속 무시됩니다. 통합된 바로 가기는 없습니다.

    <Shortcuts  Enabled="true">
      <Extensions/>
    </Shortcuts>
    

지원되는 확장 하위 시스템은 다음과 같습니다.

  • 바로 가기: 로컬 시스템에 통합될 바로 가기를 제어합니다. 다음은 두 가지 바로 가기가 있는 샘플입니다.

    <Subsystems>
    <Shortcuts Enabled="true">
     <Extensions>
       <Extension Category="AppV.Shortcut">
         <Shortcut>
           <File>\[{Common Programs}\]\\Microsoft Contoso\\Microsoft ContosoApp Filler 2010.lnk</File>
           <Target>\[{PackageRoot}\]\\Contoso\\ContosoApp.EXE</Target>
           <Icon>\[{Windows}\]\\Installer\\{90140000-0011-0000-0000-0000000FF1CE}\\inficon.exe</Icon>
           <Arguments />
           <WorkingDirectory />
           <AppUserModelId>ContosoApp.Filler.3</AppUserModelId>
           <Description>Fill out dynamic forms to gather and reuse information throughout the organization using Microsoft ContosoApp.</Description>
           <Hotkey>0</Hotkey>
           <ShowCommand>1</ShowCommand>
           <ApplicationId>\[{PackageRoot}\]\\Contoso\\ContosoApp.EXE</ApplicationId>
         </Shortcut>
     </Extension>
     <Extension Category="AppV.Shortcut">
       <Shortcut>
         <File>\[{AppData}\]\\Microsoft\\Contoso\\Recent\\Templates.LNK</File>
         <Target>\[{AppData}\]\\Microsoft\\Templates</Target>
         <Icon />
         <Arguments />
         <WorkingDirectory />
         <AppUserModelId />
         <Description />
         <Hotkey>0</Hotkey>
         <ShowCommand>1</ShowCommand>
         <!-- Note the ApplicationId is optional -->
       </Shortcut>
     </Extension>
    </Extensions>
    </Shortcuts>
    
  • 파일 형식 연결: 기본적으로 열려는 프로그램과 파일 형식을 연결하고 상황에 맞는 메뉴를 설정합니다. (MIME 형식은 이 하위 시스템을 사용하여 설정할 수도 있습니다). 샘플 파일 형식 연결:

    <FileTypeAssociations Enabled="true">
    <Extensions>
     <Extension Category="AppV.FileTypeAssociation">
       <FileTypeAssociation>
         <FileExtension MimeAssociation="true">
         <Name>.docm</Name>
         <ProgId>contosowordpad.DocumentMacroEnabled.12</ProgId>
         <PerceivedType>document</PerceivedType>
         <ContentType>application/vnd.ms-contosowordpad.document.macroEnabled.12</ContentType>
         <OpenWithList>
           <ApplicationName>wincontosowordpad.exe</ApplicationName>
         </OpenWithList>
        <OpenWithProgIds>
           <ProgId>contosowordpad.8</ProgId>
         </OpenWithProgIds>
         <ShellNew>
           <Command />
           <DataBinary />
           <DataText />
           <FileName />
           <NullFile>true</NullFile>
           <ItemName />
           <IconPath />
           <MenuText />
           <Handler />
         </ShellNew>
       </FileExtension>
       <ProgId>
          <Name>contosowordpad.DocumentMacroEnabled.12</Name>
           <DefaultIcon>\[{Windows}\]\\Installer\\{90140000-0011-0000-0000-0000000FF1CE}\\contosowordpadicon.exe,15</DefaultIcon>
           <Description>Blah Blah Blah</Description>
           <FriendlyTypeName>\[{FOLDERID\_ProgramFilesX86}\]\\Microsoft Contoso 14\\res.dll,9182</FriendlyTypeName>
           <InfoTip>\[{FOLDERID\_ProgramFilesX86}\]\\Microsoft Contoso 14\\res.dll,1424</InfoTip>
           <EditFlags>0</EditFlags>
           <ShellCommands>
             <DefaultCommand>Open</DefaultCommand>
             <ShellCommand>
                <ApplicationId>{e56fa627-c35f-4a01-9e79-7d36aed8225a}</ApplicationId>
                <Name>Edit</Name>
                <FriendlyName>&Edit</FriendlyName>
                <CommandLine>"\[{PackageRoot}\]\\Contoso\\WINcontosowordpad.EXE" /vu "%1"</CommandLine>
             </ShellCommand>
             </ShellCommand>
               <ApplicationId>{e56fa627-c35f-4a01-9e79-7d36aed8225a}</ApplicationId>
               <Name>Open</Name>
               <FriendlyName>&Open</FriendlyName>
               <CommandLine>"\[{PackageRoot}\]\\Contoso\\WINcontosowordpad.EXE" /n "%1"</CommandLine>
               <DropTargetClassId />
               <DdeExec>
                 <Application>mscontosowordpad</Application>
                 <Topic>ShellSystem</Topic>
                 <IfExec>\[SHELLNOOP\]</IfExec>
                 <DdeCommand>\[SetForeground\]\[ShellNewDatabase "%1"\]</DdeCommand>
               </DdeExec>
             </ShellCommand>
           </ShellCommands>
         </ProgId>
        </FileTypeAssociation>
      </Extension>
     </Extensions>
     </FileTypeAssociations>
    
  • URL 프로토콜: 클라이언트 컴퓨터의 로컬 레지스트리에 통합된 URL 프로토콜(예: "mailto:")을 제어합니다.

    <URLProtocols Enabled="true">
    <Extensions>
    <Extension Category="AppV.URLProtocol">
    <URLProtocol>
     <Name>mailto</Name>
     <ApplicationURLProtocol>
     <DefaultIcon>\[{ProgramFilesX86}\]\\Microsoft Contoso\\Contoso\\contosomail.EXE,-9403</DefaultIcon>
     <EditFlags>2</EditFlags>
     <Description />
     <AppUserModelId />
     <FriendlyTypeName />
     <InfoTip />
    <SourceFilter />
     <ShellFolder />
     <WebNavigableCLSID />
     <ExplorerFlags>2</ExplorerFlags>
     <CLSID />
     <ShellCommands>
     <DefaultCommand>open</DefaultCommand>
     <ShellCommand>
     <ApplicationId>\[{ProgramFilesX86}\]\\Microsoft Contoso\\Contoso\\contosomail.EXE</ApplicationId>
     <Name>open</Name>
     <CommandLine>\[{ProgramFilesX86}\\Microsoft Contoso\\Contoso\\contosomail.EXE" -c OEP.Note /m "%1"</CommandLine>
     <DropTargetClassId />
     <FriendlyName />
     <Extended>0</Extended>
     <LegacyDisable>0</LegacyDisable>
     <SuppressionPolicy>2</SuppressionPolicy>
      <DdeExec>
     <NoActivateHandler />
     <Application>contosomail</Application>
     <Topic>ShellSystem</Topic>
     <IfExec>\[SHELLNOOP\]</IfExec>
     <DdeCommand>\[SetForeground\]\[ShellNewDatabase "%1"\]</DdeCommand>
     </DdeExec>
     </ShellCommand>
     </ShellCommands>
     </ApplicationURLProtocol>
     </URLProtocol>
     </Extension>
     </Extension>
     </URLProtocols>
    
  • 소프트웨어 클라이언트: 앱이 Email 클라이언트, 뉴스 읽기 프로그램, 미디어 플레이어로 등록할 수 있도록 허용하고 앱이 프로그램 액세스 설정 및 컴퓨터 기본값 UI에 표시되도록 합니다. 대부분의 경우 사용하도록 설정하고 사용하지 않도록 설정하기만 하면 됩니다. 특히 해당 클라이언트를 제외하고 다른 클라이언트를 사용하도록 설정하려는 경우 전자 메일 클라이언트를 사용하도록 설정하고 사용하지 않도록 설정하는 컨트롤도 있습니다.

     <SoftwareClients Enabled="true">
       <ClientConfiguration EmailEnabled="false" />
     </SoftwareClients>
    
  • AppPaths: 예를 들어 contoso.exe 애플리케이션이 "myapp"이라는 이름으로 등록된 apppath 경우 실행 메뉴 아래에 "myapp"을 입력할 수 있으며 contoso.exe 열립니다.

     <AppPaths Enabled="true">
     <Extensions>
     <Extension Category="AppV.AppPath">
     <AppPath>
       <ApplicationId>\[{ProgramFilesX86}\]\\Microsoft Contoso\\Contoso\\contosomail.EXE</ApplicationId>
       <Name>contosomail.exe</Name>
       <ApplicationPath>\[{ProgramFilesX86}\]\\Microsoft Contoso\\Contoso\\contosomail.EXE</ApplicationPath>
       <PATHEnvironmentVariablePrefix />
       <CanAcceptUrl>false</CanAcceptUrl>
       <SaveUrl />
     </AppPath>
     </Extension>
     </Extensions>
     </AppPaths>
    
  • COM: 애플리케이션에서 로컬 COM 서버를 등록할 수 있습니다. 모드는 통합, 격리 또는 해제일 수 있습니다.

     <COM Mode="Isolated"/>
    
  • 기타 설정:

    확장 외에도 다른 하위 시스템을 사용/사용하지 않도록 설정하고 편집할 수 있습니다.

    • 가상 커널 개체: <Objects Enabled="false" />

    • 가상 레지스트리: HKCU 내의 Virtual Registry에서 레지스트리를 설정하려는 경우에 사용됩니다.

      <Registry Enabled="true">
      <Include>
      <Key Path="\\REGISTRY\\USER\\\[{AppVCurrentUserSID}\]\\Software\\ABC">
      <Value Type="REG\_SZ" Name="Bar" Data="NewValue" />
        </Key>
         <Key Path="\\REGISTRY\\USER\\\[{AppVCurrentUserSID}\]\\Software\\EmptyKey" />
        </Include>
         <Delete>
         </Registry>
      
    • 가상 파일 시스템: <FileSystem Enabled="true" />

    • 가상 글꼴: <Fonts Enabled="false" />

    • 가상 환경 변수

      <EnvironmentVariables Enabled="true">
      <Include>
            <Variable Name="UserPath" Value="%path%;%UserProfile%" />
            <Variable Name="UserLib" Value="%UserProfile%\\ABC" />
            </Include>
           <Delete>
            <Variable Name="lib" />
             </Delete>
             </EnvironmentVariables>
      
    • 가상 서비스: <Services Enabled="false" />

UserScripts

스크립트를 사용하여 애플리케이션이 실행되기 전에 배포 또는 제거 시 가상 환경을 설정하거나 변경하고 스크립트를 실행하거나 애플리케이션이 종료된 후 환경을 "클린"하는 데 사용할 수 있습니다. 시퀀서에서 출력되는 샘플 사용자 구성 파일을 참조하여 샘플 스크립트를 확인합니다. 아래 스크립트 섹션에서는 사용할 수 있는 다양한 트리거에 대한 자세한 정보를 제공합니다.

관리Authority

두 버전의 패키지가 동일한 컴퓨터에 공존하는 경우 사용할 수 있습니다. 하나는 App-V 4.6에 배포되고 다른 버전은 App-V 5.0에 배포됩니다. App-V vNext가 명명된 패키지의 App-V 4.6 확장 지점을 인수하도록 허용하려면 UserConfig 파일에 다음을 입력합니다. 여기서 PackageName은 App-V 4.6의 패키지 GUID입니다.

  <ManagingAuthority TakeoverExtensionPointsFrom46="true" PackageName="032630c0-b8e2-417c-acef-76fc5297fe81" />

동적 배포 구성 파일

헤더 - 배포 구성 파일의 헤더는 다음과 같습니다.

<?xml version="1.0" encoding="utf-8"?><DeploymentConfiguration PackageId="1f8488bf-2257-46b4-b27f-09c9dbaae707" DisplayName="Reserved" xmlns="<https://schemas.microsoft.com/appv/2010/deploymentconfiguration">

PackageId는 매니페스트 파일에 있는 것과 동일한 값입니다.

본문 - 배포 구성 파일의 본문에는 다음 두 개의 섹션이 포함됩니다.

  • 사용자 구성 섹션 - 이전 섹션에서 설명한 사용자 구성 파일과 동일한 콘텐츠를 허용합니다. 패키지가 사용자에게 게시되면 이 섹션의 모든 앱 확장 구성 설정은 사용자 구성 파일도 제공되지 않는 한 패키지 내의 매니페스트에서 해당 설정을 재정의합니다. UserConfig 파일도 제공되면 배포 구성 파일의 사용자 설정 대신 사용됩니다. 패키지가 전역적으로 게시된 경우 배포 구성 파일의 내용만 매니페스트와 함께 사용됩니다.

  • 컴퓨터 구성 섹션에는 컴퓨터의 특정 사용자가 아닌 전체 컴퓨터에 대해서만 구성할 수 있는 정보가 포함되어 있습니다. 예를 들어 HKEY_LOCAL_MACHINE VFS의 레지스트리 키입니다.

<DeploymentConfiguration PackageId="1f8488bf-2257-46b4-b27f-09c9dbaae707" DisplayName="Reserved" xmlns="<https://schemas.microsoft.com/appv/2010/deploymentconfiguration">
<UserConfiguration>
  ..
</UserConfiguration>
<MachineConfiguration>
..
</MachineConfiguration>
..
</MachineConfiguration>
</DeploymentConfiguration>

사용자 구성 - 배포 구성 파일의 사용자 구성 섹션에 제공된 설정에 대한 자세한 내용은 이전 동적 사용자 구성 파일 섹션을 사용합니다.

컴퓨터 구성 - 배포 구성 파일의 컴퓨터 구성 섹션은 컴퓨터의 특정 사용자가 아닌 전체 컴퓨터에 대해서만 설정할 수 있는 정보를 구성하는 데 사용됩니다. 예를 들어 HKEY_LOCAL_MACHINE Virtual Registry의 레지스트리 키입니다. 이 요소 아래에는 다음 네 개의 하위 섹션이 허용됩니다.

  1. 하위
  2. ProductSourceURLOptOut
  3. MachineScripts
  4. TerminateChildProcess

하위

AppExtensions 및 기타 하위 시스템은 아래에 <Subsystems>하위 노드로 정렬됩니다.

    <MachineConfiguration>
      <Subsystems>
      ..
      </Subsystems>
    ..
    </MachineConfiguration>

다음 섹션에서는 다양한 하위 시스템 및 사용 샘플을 표시합니다.

확장:

일부 하위 시스템(확장 하위 시스템)은 모든 사용자에게만 적용할 수 있는 확장을 제어합니다. 하위 시스템은 애플리케이션 기능입니다. 이는 모든 사용자에게만 적용될 수 있으므로 이 유형의 확장을 로컬 시스템에 통합하려면 패키지를 전역적으로 게시해야 합니다. 사용자 구성의 확장에 적용되는 컨트롤 및 설정에 대한 동일한 규칙도 MachineConfiguration 섹션에 적용됩니다.

애플리케이션 기능:

Windows 운영 체제 인터페이스의 기본 프로그램에서 사용됩니다. 애플리케이션이 특정 창 MIME 형식을 열 수 있는 것처럼 시작 메뉴 인터넷 브라우저 슬롯의 경쟁자로서 특정 파일 확장자를 열 수 있는 것으로 등록할 수 있습니다. 또한 이 확장은 가상 애플리케이션을 기본 프로그램 설정 UI에 표시합니다.

    <ApplicationCapabilities Enabled="true">
      <Extensions>
       <Extension Category="AppV.ApplicationCapabilities">
        <ApplicationCapabilities>
         <ApplicationId>\[{PackageRoot}\]\\LitView\\LitViewBrowser.exe</ApplicationId>
         <Reference>
          <Name>LitView Browser</Name>
          <Path>SOFTWARE\\LitView\\Browser\\Capabilities</Path>
         </Reference>
       <CapabilityGroup>
        <Capabilities>
         <Name>@\[{ProgramFilesX86}\]\\LitView\\LitViewBrowser.exe,-12345</Name>
         <Description>@\[{ProgramFilesX86}\]\\LitView\\LitViewBrowser.exe,-12346</Description>
         <Hidden>0</Hidden>
         <EMailSoftwareClient>Lit View E-Mail Client</EMailSoftwareClient>
         <FileAssociationList>
          <FileAssociation Extension=".htm" ProgID="LitViewHTML" />
          <FileAssociation Extension=".html" ProgID="LitViewHTML" />
          <FileAssociation Extension=".shtml" ProgID="LitViewHTML" />
         </FileAssociationList>
         <MIMEAssociationList>
          <MIMEAssociation Type="audio/mp3" ProgID="LitViewHTML" />
          <MIMEAssociation Type="audio/mpeg" ProgID="LitViewHTML" />
         </MIMEAssociationList>
        <URLAssociationList>
          <URLAssociation Scheme="http" ProgID="LitViewHTML.URL.http" />
         </URLAssociationList>
         </Capabilities>
      </CapabilityGroup>
       </ApplicationCapabilities>
      </Extension>
    </Extensions>
    </ApplicationCapabilities>

기타 설정:

확장 외에도 다른 하위 시스템을 편집할 수 있습니다.

  • Machine Wide Virtual Registry: 내의 가상 레지스트리에서 레지스트리 키를 설정하려는 경우에 사용됩니다. HKEY_Local_Machine

      <Registry>
      <Include>
        <Key Path="\\REGISTRY\\Machine\\Software\\ABC">
          <Value Type="REG\_SZ" Name="Bar" Data="Baz" />
         </Key>
        <Key Path="\\REGISTRY\\Machine\\Software\\EmptyKey" />
       </Include>
      <Delete>
      </Registry>
    
  • 컴퓨터 전체 가상 커널 개체

      <Objects>
      <NotIsolate>
         <Object Name="testObject" />
       </NotIsolate>
      </Objects>
    

ProductSourceURLOptOut

패키지의 URL을 PackageSourceRoot를 통해 전역적으로 수정할 수 있는지 여부를 나타냅니다(지점 시나리오 지원). 기본값은 false이며 설정 변경 내용은 다음 시작에 적용됩니다.

    <MachineConfiguration>
      .. 
      <ProductSourceURLOptOut Enabled="true" />
      ..
    </MachineConfiguration>

MachineScripts

배포, 게시 또는 제거 시 스크립트를 실행하도록 패키지를 구성할 수 있습니다. 시퀀서에서 생성된 샘플 배포 구성 파일을 참조하여 샘플 스크립트를 확인합니다. 아래 스크립트 섹션에서는 사용할 수 있는 다양한 트리거에 대한 자세한 정보를 제공합니다.

TerminateChildProcess

애플리케이션 실행 파일을 지정할 수 있으며, 해당 자식 프로세스는 애플리케이션 exe 프로세스가 종료될 때 종료됩니다.

    <MachineConfiguration>
      ..   
      <TerminateChildProcesses>
        <Application Path="\[{PackageRoot}\]\\Contoso\\ContosoApp.EXE" />
        <Application Path="\[{PackageRoot}\]\\LitView\\LitViewBrowser.exe" />
        <Application Path="\[{ProgramFilesX86}\]\\Microsoft Contoso\\Contoso\\contosomail.EXE" />
      </TerminateChildProcesses>
      ..
    </MachineConfiguration>

스크립트

다음 표에서는 다양한 스크립트 이벤트 및 실행할 수 있는 컨텍스트에 대해 설명합니다.

스크립트 실행 시간 배포 구성에서 지정할 수 있습니다. 사용자 구성에서 지정할 수 있습니다. 패키지의 가상 환경에서 실행할 수 있습니다. 특정 애플리케이션의 컨텍스트에서 실행할 수 있습니다. 시스템/사용자 컨텍스트에서 실행: (배포 구성, 사용자 구성)
AddPackage X (SYSTEM, N/A)
PublishPackage X X (SYSTEM, User)
UnpublishPackage X X (SYSTEM, User)
RemovePackage X (SYSTEM, N/A)
StartProcess X X X X (사용자, 사용자)
ExitProcess X X X (사용자, 사용자)
StartVirtualEnvironment X X X (사용자, 사용자)
TerminateVirtualEnvironment X X (사용자, 사용자)

App-V 5.0 매니페스트 파일을 사용하여 동적 구성 파일 만들기

App-V 5.0 관리 콘솔을 수동으로 사용하거나 두 개의 샘플 파일로 생성되는 패키지를 시퀀싱하는 세 가지 방법 중 하나를 사용하여 동적 구성 파일을 만들 수 있습니다.

App-V 5.0 관리 콘솔을 사용하여 파일을 만드는 방법에 대한 자세한 내용은 App-V 5.0 관리 콘솔을 사용하여 사용자 지정 구성 파일을 만드는 방법을 참조하세요.

파일을 수동으로 만들려면 이전 섹션의 위의 정보를 단일 파일로 결합할 수 있습니다. 시퀀서에서 생성된 파일을 사용하는 것이 좋습니다.

PowerShell을 사용하여 배포 구성 파일을 적용하는 방법

PowerShell을 사용하여 사용자 구성 파일을 적용하는 방법

App-V 5.0 작업