Set up a virtual machine
This topic provides a general overview of the setup requirements for an Install Capture virtual machine. There are a number of possible approaches to how you might implement each of these generic steps.
Typically you would implement these steps before using the Virtual Machine Configuration Wizard within AppDNA. However, the wizard provides an option to open the virtual machine in a console and you can perform the virtual machine setup steps in the console as you work through the wizard. (This does not include the first two steps, because the wizard requires the virtual machine to already exist.)
Create a virtual machine (or obtain the virtual machine files) based on one of the technologies listed in Install Capture.
When capturing Windows applications for testing compatibility with a desktop or server Windows platform, the guest OS should match the OS on which the applications are currently running. For example, if you are preparing for a migration from Windows 7 to Windows 10, the virtual machine should be based on Windows 7. However, when using the virtual machine to create production MSIs, App-V sequences, or XenApp profiles, the guest OS should normally match the target OS.
The virtual machine should not have anti-virus software running, because this can interfere with the Install Capture process.
To communicate with the virtual machine, AppDNA needs the IP address, or machine or DNS name of the guest OS. Using the machine or DNS name requires an appropriate name resolution mechanism (such as DNS) to be configured on the network. If using the IP address, Citrix recommends that the virtual machine is configured with a static IP address. If the IP address changes, you will need to update the guest OS IP address stored in the virtual machine configuration.
Start and stop the virtual machine.
This is to ensure that the virtual machine is working properly.
If you plan to use Install Capture to create virtual application packages, you must install additional software on the virtual machine, such as the App-V Sequencer or XenApp Profiler. This additional software does not come with AppDNA.
Depending on the additional software, you may need to edit the execution profiles accordingly.
Ensure that the user account that will be used to log on to the virtual machine to perform an Install Capture has administrative privileges.
This user account can be the local administrator account within the virtual machine or another user account that has been added to the Administrators group on the virtual machine.
Citrix recommends that you configure the virtual machine for automatic log on with this administrative user account and that you suppress any legal notices that appear at logon. This means that you do not need to log on to the virtual machine manually during the Install Capture process.
Note: If policies do not allow automatic log on (or the suppression of any legal notices), you may want to create the snapshot of the virtual machine while the guest OS is logged on. This means that when AppDNA reverts the virtual machine at the start of the Install Capture, there will be no need for any user interaction.
Create a folder on the AppDNA machine or a network share in which to store the Install Capture output files, such as the MSIs for importing into AppDNA. This folder can optionally also be used for the input files.
Install Capture can handle the output files in two different ways:
- Stream results – With this option, Install Capture initially stores the output files in a staging folder within the virtual machine. Then, after the capture is complete, the output files are streamed to a folder on the AppDNA machine or a network share. AppDNA requires read-write access to this folder but the virtual machine does not need to access it.
- Copy results – With this option, Install Capture stores the output files directly in a folder on the AppDNA machine or a network share. Both AppDNA and the virtual machine require read and write access to this folder. This option is faster than the streaming option. Citrix recommends this option if you intend to run batches of captures unattended, for example, using auto-clicker.
You select the option to use when you create the virtual machine configuration within AppDNA.
The virtual machine also needs access to the location of the input files. You can either store these input files in the same folder as the output, or you can create a separate shared folder for the input files. In all cases the virtual machine needs to have read access to the input files. If you will be importing installation packages from Active Directory or ConfigMgr, the virtual machine also needs access to the Active Directory or ConfigMgr domain and the location of the installation packages.
If you plan to use the option to copy the results, take steps to ensure that the virtual machine has read and write access to the folder created in the previous step. If you plan to use the option to stream the results, the virtual machine only requires read access to the folder in which the input files are stored.
There are a number of ways that you can set up the folder so that the virtual machine has access to it:
- If you will log on to the virtual machine as a domain user and the shared folder resides on a machine in the same domain or a trusted domain, you can grant that user access to the share.
- Create a user with the same name and credentials on both the AppDNA machine and the virtual machine. Create a shared folder on the AppDNA machine and grant that user read/write access to that shared folder. By logging on to the virtual machine with the same credentials to run Install Capture, the shared folder should be accessible from within the virtual machine.
- Establish a persistent connection to the share from within the virtual machine using appropriate credentials. If the shared folder is on the host machine, you can use the same user credentials that you use to log on to the host machine. If the shared folder resides within a domain, use domain credentials.
Install the Citrix AppDNA VM Configuration MSI within the virtual machine, and then restart the virtual machine.
To do this, you need the installer (called Citrix AppDNA VM Configuration.msi). This comes with AppDNA. It is copied into a Tools subfolder of the AppDNA installation folder when you install AppDNA. The default location is C:\Program Files\Citrix\AppDNA\Tools (C:\Program Files (x86)\Citrix\AppDNA\Tools on a 64-bit machine).
The version of the VM Configuration MSI must match the version of AppDNA you are running. This means that you need to upgrade the VM Configuration tools on the virtual machine when you upgrade AppDNA.
This step applies only if the guest OS supports User Account Control (UAC).
The Citrix AppDNA VM Configuration MSI installs Remote Admin, which is an AppDNA agent that runs within the virtual machine to provide support for AppDNA to communicate with the virtual machine. If UAC is enabled on the guest OS, every time that Remote Admin starts, Windows opens a UAC dialog box that asks for permission to change the computer. This can be problematic if it happens for every Install Capture, because it requires user interaction and so prevents a batch of captures running unattended.
The recommended solution is to disable UAC on the virtual machine (for example, as described in http://support.microsoft.com/kb/975787). However, this is not normally necessary on Windows 8 or Windows Server 2012, because the VM Configuration MSI automatically disables UAC on these operating systems.
If disabling UAC is not possible, create the snapshot while Remote Admin is running as explained in the next step.
After completing the above steps, create a snapshot of the virtual machine’s state within the virtualization technology. Install Capture uses this snapshot to return the virtual machine to a known state at the start of each capture.
If the guest OS supports UAC and your security policy does not allow UAC to be disabled, create the snapshot of your virtual machine when Remote Admin is running. This means that Remote Admin will already be running when you run Install Capture and so the UAC dialog box will not appear during the Install Capture process. If you create the snapshot of the virtual machine when the virtual machine is powered off, the UAC prompt will open every time you run Install Capture, which can be disruptive and prevents a batch of captures running unattended.
Configure the anti-virus software to disable on-access scanning of the Install Capture output and input folders.