Поделиться через


Сведения о динамической конфигурации App-V 5.1

С помощью динамической конфигурации можно изменить файл динамической конфигурации, чтобы настроить запуск пакета App-V 5.1 для пользователя или группы. Настройка пакета устраняет необходимость повторной замены пакетов с помощью нужных параметров. Он также позволяет сохранить содержимое пакета и пользовательские параметры независимыми.

Пакеты виртуальных приложений содержат манифест, предоставляющий все основные сведения для пакета. Эта информация включает значения по умолчанию для параметров пакета и определяет параметры в самой базовой форме (без дополнительной настройки).

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

Используйте эти созданные файлы, чтобы при необходимости внести изменения, которые не влияют непосредственно на пакет. Если вы хотите добавить, удалить или обновить файлы конфигурации, внесите изменения в значения по умолчанию в сведениях манифеста.

Совет

Порядок чтения файлов:

  • UserConfig.xml
  • DeploymentConfig.xml
  • Манифест

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

  1. При настройке файла DeploymentConfig.xml и применении настраиваемых параметров параметры по умолчанию в манифесте пакета переопределяются.
  2. При настройке UserConfig.xml и применении настраиваемых параметров параметры по умолчанию для конфигурации развертывания и манифеста пакета переопределяются.

Содержимое файла конфигурации пользователя (UserConfig.xml)

Файл UserConfig предоставляет параметры конфигурации, которые применяются к конкретному пользователю при развертывании пакета на компьютере с клиентом App-V 5.1. Эти параметры не влияют на других пользователей клиента.

Используйте файл UserConfig, чтобы указать или изменить пользовательские параметры для пакета:

  • Расширения, интегрированные в собственную систему для каждого пользователя: ярлыки, сопоставления типов файлов, протоколы URL-адресов, AppPaths, программные клиенты и COM
  • Виртуальные подсистемы: объекты приложений, переменные среды, изменения реестра, службы и шрифты
  • Скрипты (только контекст пользователя)
  • Центр управления (для контроля сосуществования пакета с App-V 4.6)

Заголовок динамического файла конфигурации пользователя выглядит следующим образом:

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

PackageId — это то же значение, что и в файле манифеста.

Body

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

  1. Приложения
  2. Подсистем
  3. UserScripts
  4. УправлениеAuthority

Приложения

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

<UserConfiguration PackageId="1f8488bf-2257-46b4-b27f-09c9dbaae707" DisplayName="Reserved"  xmlns="http://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 и другие подсистемы, упорядоченные как вложенные.

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

<Subsystems>

..

</Subsystems>

..

</UserConfiguration>

Вы можете включить или отключить каждую подсистему с помощью атрибута Enabled .

Расширения

Некоторые подсистемы (подсистемы расширений) управляют расширениями. К этим подсистемам относятся ярлыки, связи File-Type, протоколы URL-адресов, AppPaths, программные клиенты и COM.

Подсистемы расширений можно включить и отключить независимо от содержимого. Например, если включить ярлыки, клиент по умолчанию использует ярлыки, содержащиеся в манифесте. Каждая подсистема <расширения может содержать узел Расширения> . Если этот дочерний элемент присутствует, клиент игнорирует содержимое в файле манифеста для этой подсистемы и использует только содержимое в файле конфигурации.

Примеры:

  • Если определить его в файле конфигурации пользователя или развертывания, содержимое манифеста игнорируется.

    
    <Shortcuts  Enabled="true"\>
    
    <Extensions>
    
    ...
    
    </Extensions>
    
    </Shortcuts>
    
  • Если определить только следующее, содержимое манифеста интегрируется во время публикации.

    
    <Shortcuts  Enabled="true"/>
    
  • Если определить следующее, все сочетания клавиш в манифесте по-прежнему игнорируются. Другими словами, ярлыки не интегрируются.

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

Подсистема расширения File-Type Associates связывает типы файлов с программами для открытия по умолчанию, а также настраивает контекстное меню.

Совет

Подсистему можно настроить с типами 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-000000FF1CE}\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}]\MicrosoftContoso\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>

Подсистема расширения "Клиенты программного обеспечения" позволяет приложению регистрироваться как клиент электронной почты, читатель новостей, проигрыватель мультимедиа и делает приложение видимым в пользовательском интерфейсе set program accesss and Computers default. В большинстве случаев необходимо только включить и отключить его. Кроме того, существует элемент управления для включения и отключения почтового клиента, если вы хотите, чтобы другие клиенты по-прежнему были включены, кроме этого клиента.


<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

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

УправлениеAuthority

Используйте ManagingAuthority, если две версии пакета совместно существуют на одном компьютере: одна развернута в 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" />

Файл конфигурации развертывания (DeploymentConfig.xml)

Файл DeploymentConfig предоставляет параметры конфигурации для контекста компьютера и контекста пользователя, предоставляя те же возможности, что и в файле UserConfig. Параметр применяется при развертывании пакета на компьютере с клиентом App-V 5.1.

Используйте файл DeploymentConfig, чтобы указать или изменить пользовательские параметры для пакета:

  • Все параметры UserConfig
  • Расширения, которые могут применяться только глобально для всех пользователей
  • Виртуальные подсистемы для глобальных расположений компьютеров, например реестр
  • URL-адрес источника продукта
  • Скрипты (только контекст компьютера)
  • Элементы управления для завершения дочерних процессов

Заголовок

Заголовок файла конфигурации динамического развертывания выглядит следующим образом:

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

PackageId — это то же значение, что и в файле манифеста.

Body

Основной текст файла конфигурации динамического развертывания включает два раздела:

  • UserConfiguration: позволяет использовать то же содержимое, что и файл конфигурации пользователя, описанный в предыдущем разделе. При публикации пакета для пользователя все параметры конфигурации appextensions в этом разделе переопределяют соответствующие параметры манифеста в пакете, если вы не предоставите файл конфигурации пользователя. Если также предоставляется файл UserConfig, он используется вместо параметров пользователя в файле конфигурации развертывания. Если пакет публикуется глобально, в сочетании с манифестом будет использоваться только содержимое файла конфигурации развертывания. Дополнительные сведения см. в разделе Содержимое файла конфигурации пользователя (UserConfig.xml).

  • MachineConfiguration содержит сведения, которые можно настроить только для всего компьютера, но не для конкретного пользователя на компьютере. Например, HKEY_LOCAL_MACHINE разделы реестра в VFS.


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

<UserConfiguration>

...

</UserConfiguration>

<MachineConfiguration>

...

</MachineConfiguration>

...

</MachineConfiguration>

</DeploymentConfiguration>

UserConfiguration

Сведения о параметрах, предоставляемых для этого раздела, см. в разделе Содержимое файла конфигурации пользователя (UserConfig.xml ).

MachineConfiguration

Используйте раздел MachineConfiguration для настройки сведений для всего компьютера; не для конкретного пользователя на компьютере. Например, HKEY_LOCAL_MACHINE разделы реестра в виртуальном реестре. В этом элементе разрешено использовать четыре подраздела:

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

Подсистем

AppExtensions и другие подсистемы, упорядоченные как вложенные.


<MachineConfiguration>

  <Subsystems>

  …

  </Subsystems>

…

</MachineConfiguration>

Вы можете включить или отключить каждую подсистему с помощью атрибута Enabled .

Расширения

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

Возможности приложений. Используется программами по умолчанию, которые позволяют приложению регистрироваться как:

  • Возможность открытия определенных расширений файлов
  • Претендент на слот браузера меню "Пуск"
  • Возможность открытия определенных типов MIME окон

Это расширение также делает виртуальное приложение видимым в пользовательском интерфейсе Set 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

Используйте ProductSourceURLOptOut, чтобы указать, что URL-адрес пакета можно глобально изменить с помощью PackageSourceRoot (для поддержки сценариев филиала). Изменения вступают в силу при следующем запуске.


<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.1 поддерживает использование нескольких скриптов в одном триггере событий для пакетов App-V, включая пакеты, преобразованные из App-V 4.6 в App-V 5.0 или более поздней версии. Чтобы включить использование нескольких скриптов, App-V 5.1 использует приложение средства запуска скриптов с именем ScriptRunner.exe, которое устанавливается в рамках установки клиента App-V.

Использование нескольких скриптов в одном триггере события

Для каждого скрипта, который требуется выполнить, передайте этот скрипт в качестве аргумента приложению ScriptRunner.exe. Затем приложение запускает каждый скрипт отдельно вместе с аргументами, указанными для каждого скрипта. Используйте только один скрипт (ScriptRunner.exe) для каждого триггера.

Примечание.

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

Примеры описаний скриптов и параметров

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

<MachineScripts>
 <AddPackage>
   <Path>ScriptRunner.exe</Path>
   <Arguments>
   -appvscript script1.exe arg1 arg2 -appvscriptrunnerparameters -wait -timeout=10
   -appvscript script2.vbs arg1 arg2
   -appvscript script3.bat arg1 arg2 -appvscriptrunnerparameters -wait -timeout=30 -rollbackonerror
   </Arguments>
   <Wait timeout="40" RollbackOnError="true"/>
 </AddPackage>
</MachineScripts>

Параметры в примере файла

<AddPackage>

Имя триггера события, для которого выполняется скрипт, например добавление пакета или публикация пакета.

<Путь>ScriptRunner.exe</Path>

Приложение средства запуска скриптов, установленное в рамках установки клиента App-V.

Примечание.

Хотя ScriptRunner.exe устанавливается как часть клиента App-V, расположение клиента App-V должно находиться в %path% иначе ScriptRunner не будет выполняться. ScriptRunner.exe обычно находится в папке C:FilesApplication Virtualizationfolder.

<Аргументы>

-appvscript — маркер, представляющий фактический скрипт, который требуется выполнить.

script1.exe — Имя скрипта, который требуется запустить.

arg1 arg2 — аргументы для скрипта, который требуется запустить.

-appvscriptrunnerparameters — маркер, представляющий параметры выполнения для script1.exe.

-wait — маркер, информирующий ScriptRunner о необходимости дождаться выполнения script1.exe, прежде чем перейти к следующему скрипту.

-timeout=x — маркер, информирующий ScriptRunner о прекращении выполнения текущего скрипта через x секунды. Все остальные указанные скрипты по-прежнему выполняются.

-rollbackonerror — маркер, информирующий ScriptRunner о прекращении выполнения всех еще не запущенных скриптов и откате ошибки в клиенте App-V.

<Время ожидания="40" RollbackOnError="true"/>

Ожидает общего завершения ScriptRunner.exe.

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

Если какой-либо отдельный скрипт сообщил об ошибке, а для отката задано значение true, то ScriptRunner сообщит об ошибке клиенту App-V.

ScriptRunner выполняет любой скрипт, тип файла которого связан с приложением, установленным на компьютере. Если связанное приложение отсутствует или тип файла скрипта не связан ни с каким приложением на компьютере, скрипт не выполняется.

Создание динамического файла конфигурации с помощью файла манифеста App-V 5.1

Динамический файл конфигурации можно создать с помощью одного из трех методов: вручную, с помощью консоли управления App-V 5.1 или виртуализации пакета, который создает два примера файлов. Дополнительные сведения о создании файла с помощью консоли управления App-V 5.1 см. в статье Создание настраиваемого файла конфигурации с помощью консоли управления App-V 5.1.

Чтобы создать файл вручную, сведения, приведенные выше в предыдущих разделах, можно объединить в один файл. Рекомендуется использовать файлы, созданные секвенатором.