Product Documentation

App-V 5.0 Sequencer execution profile

Mar 28, 2016

You can use the App-V 5.0 Sequencer execution profile with Install Capture, Self-Provisioning, or Forward Path to package applications for deployment using the App-V Client 5.0.

By default, this execution profile generally installs the application on the capture machine twice – once for sequencing and once outside of the sequencer to capture the application into an MSI for import into AppDNA. You can optionally suppress the second installation. If you do this when running the execution profile from Install Capture, the generated .appv package is automatically imported. Because the .appv file is prepared for the virtual environment, it does not include all of the application DNA for a native Windows environment. For example, it may omit information about drivers and registry settings. Therefore Citrix recommends the default behavior if you want to analyze the application for a native Windows environment.

Set up the capture machine

To run the App-V 5.0 Sequencer execution profile, perform the following additional setup on the capture machine:

  • Ensure that the capture machine has the same operating system and configuration as the client machine on which the App-V application will run.
  • Turn off Windows Defender and Windows Search on the capture machine.
  • Install Microsoft App-V Sequencer 5.0 on the capture machine.
  • Ensure that Windows PowerShell is configured as described below.

For general instructions:

PowerShell configuration

This execution profile uses Windows PowerShell, which is a pre-requisite of the Microsoft App-V Sequencer 5.0. This execution profile requires PowerShell to be configured with a particular setting. If you install the Citrix AppDNA VM Configuration MSI after PowerShell is installed, the installer will attempt to automatically configure PowerShell for you. If this is not possible or you install PowerShell after you install the AppDNA VM Configuration MSI, configure PowerShell as follows:

  1. Open the PowerShell command window.
  2. Type in the following and then press RETURN:
    Set-ExecutionPolicy Unrestricted
  3. Type Yes and then press RETURN.

If you are setting up a virtual machine for Install Capture or Forward Path, you must do this before you create the snapshot of the virtual machine.

One or two installations?

As mentioned earlier, by default this execution profile generally installs the application on the capture machine twice. To suppress the installation outside of the sequencer, give the ImportAppv replaceable a value of True.

By default the execution profile installs the application once only when:

  • You run the execution profile from Install Capture and the input file is an MSI, and you select the Load input file check box.
  • You run the execution profile from Forward Path, and the SequenceName or App:Name replaceable has been specified, or the input file is an MSI.

Output

The output of running the execution profile is stored in a subfolder within the main output folder defined in the virtual machine configuration (Install Capture and Forward Path) or in the Self-Provisioning client. How the subfolder is named depends on how you run the execution profile – when run through Install Capture or Forward Path, the subfolder's name is derived from the name of the input file and the date and time stamp. When run through Self-Provisioning, the name of the folder is based on the instruction file's identifier.

The execution profile generates the following output:

  • An MSI for importing into AppDNA (if the application was installed on the capture machine twice).
  • Installation instructions in the form of an HTML page that references images of each installation step.
  • An _AppVSequence subfolder that stores the output of the sequencer. You can control the naming of the output files.

The execution profile names the files generated by the sequencer as follows. If more than one of these apply, the highest in the list always take precedence.

  1. If the SequenceName replaceable is specified, this is always used.
  2. If the input file is derived from Active Directory or ConfigMgr, the App:Name replaceable (which automatically stores the application name) is used.
  3. If the input file is an MSI, the MSI product name is used.
  4. If the input file is not an MSI, the execution profile attempts to retrieve the application name. If this is not successful, the name of the installation file is used.

Replaceables

The following table provides details of the replaceables that you can use to configure the App-V 5.0 Sequencer execution profile.

Name Description
ImportAppv Set this to a value of True if you want to load the generated .appv package into AppDNA rather than capturing a separate MSI specifically for importing into AppDNA. Setting this value to True suppresses the second installation of the application on the capture machine. This is suitable when you have already analyzed the application within AppDNA and now simply want to sequence the application.
MsiSilentSwitch Use to pass additional options to msiexec for MSI installations (for example, -qb - for silent installs). See http://technet.microsoft.com/library/cc759262(v=ws.10).aspx for information about the msiexec command line options.
SequenceName Use to specify the name of the .appv package that the sequencer generates.
LaunchEditor Set this to True if you want the execution profile to automatically launch the generated .appv package in the App-V Sequencer for editing after the sequencing has finished.
PromptForPrerequisites Set this to True if you want the execution profile to prompt the user to install any prerequisites before running the sequencer.
AppMonitoringPath Use to specify the path the sequencer is to monitor. If this is not specified, the sequencer will be configured to monitor the entire disk on which it is installed.
WaitForSmbIdle Specifies the time in seconds to wait for the network share access to cease before completing the task. This is useful to avoid problems caused by a stateful firewall preventing network share access on subsequent tasks.
UseAutoClick Set this to --use-autoclick if you want the execution profile to run with auto-clicker on by default. Set this to an empty string if you want auto-clicker to be off by default.