Сведения о динамической конфигурации 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

Приложения

Всем расширениям приложений, содержащимся в файле манифеста в пакете, назначается идентификатор приложения, который также определяется в файле манифеста. Это позволяет включить или отключить все расширения для определенного приложения в пакете. Идентификатор приложения должен существовать в файле манифеста, иначе он будет игнорироваться.

<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, средства чтения новостей, проигрывателя мультимедиа и делает приложение видимым в пользовательском интерфейсе Set Program Access and Computer Defaults (Установка доступа к программе и компьютер по умолчанию). В большинстве случаев необходимо только включить и отключить его. Кроме того, существует элемент управления для включения и отключения почтового клиента, если вы хотите, чтобы другие клиенты по-прежнему были включены, кроме этого клиента.

     <SoftwareClients Enabled="true">
       <ClientConfiguration EmailEnabled="false" />
     </SoftwareClients>
    
  • AppPaths. Если приложение, например, contoso.exe зарегистрировано с apppath именем myapp, оно позволяет ввести 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.

      <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

Скрипты можно использовать для настройки или изменения виртуальной среды и выполнения скриптов во время развертывания или удаления, перед выполнением приложения, или их можно использовать для "очистки" среды после завершения работы приложения. Сослаться на пример файла конфигурации пользователя, который выводится sequencer, чтобы увидеть пример скрипта. В разделе Скрипты ниже приведены дополнительные сведения о различных триггерах, которые можно использовать.

УправлениеAuthority

Можно использовать, если на одном компьютере сосуществуют две версии пакета: одна развернута в App-V 4.6, а другая — в App-V 5.0. Чтобы разрешить App-V vNext использовать точки расширения App-V 4.6 для именованного пакета, введите в файл UserConfig следующую команду, где PackageName — это GUID пакета в App-V 4.6:

  <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 разделы реестра в виртуальном реестре. В этом элементе разрешено использовать четыре подраздела:

  1. Подсистем
  2. ProductSourceURLOptOut
  3. MachineScripts
  4. TerminateChildProcess

Подсистем

AppExtensions и другие подсистемы упорядочены как подноды в разделе <Subsystems>:

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

В следующем разделе показаны различные подсистемы и примеры использования.

Расширения:

Некоторые подсистемы (подсистемы расширений) управляют расширениями, которые могут применяться только ко всем пользователям. Подсистема — это возможности приложений. Так как это может применяться только ко всем пользователям, пакет должен быть опубликован глобально, чтобы этот тип расширения можно было интегрировать в локальную систему. Те же правила для элементов управления и параметров, которые применяются к расширениям в пользовательской конфигурации, также применяются к тем, которые описаны в разделе MachineConfiguration.

Возможности приложений:

Используется программами по умолчанию в интерфейсе операционной системы Windows. Позволяет приложению зарегистрировать себя как способного открывать определенные расширения файлов, в качестве претендента на слот браузера меню "Пуск", как способного открывать определенные типы WINDOWS MIME. Это расширение также делает виртуальное приложение видимым в пользовательском интерфейсе Set Default Programs (Настройка программ по умолчанию):

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

Другие параметры:

Помимо расширений, можно изменять и другие подсистемы:

  • Виртуальный реестр на уровне компьютера. Используется, когда требуется задать раздел реестра в виртуальном реестре в пределах 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, Н/Д)
PublishPackage X X (SYSTEM, User)
Отмена публикации пакета X X (SYSTEM, User)
RemovePackage X (SYSTEM, Н/Д)
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