Virtual Converter Table Documentation for Microsoft App-V and VMware ThinApp

AdminStudio 2024 | 27.0 | Automated Application Converter

The following documentation lists settings that you can use to customize your conversion process.

Per package—You can use InstallShield to directly edit the ISVirtualPackage table to modify the settings referenced below. You could also use the App-V, ThinApp, or Citrix XenApp Assistants user interface to modify the settings.
Per Automated Application Converter project—You can specify a limited set of options in Automated Application Converter’s Project Options dialog box, but you cannot edit tables directly.
Globally for any conversion—You could edit the Settings.xml file to specify default values for many of the settings that can be specified in the ISVirtualPackage table.

The table settings that you can edit to customize your conversion process are organized into the following sections:

General Settings
Microsoft App-V Settings
VMWare ThinApp Settings

General Settings

The following settings are applicable to all virtual technologies.

ISVirtualPackage Table
ISVirtualRelease Table
Miscellaneous Virtual Conversion Settings

ISVirtualPackage Table

The ISVirtualPackage table is the main table that stores package-wide conversion settings. To edit this table, open the package in InstallShield and open the Direct Editor view. Also, if you make selections in the InstallShield Assistants, it will modify the settings in this table.

If you want to modify these settings globally, you need to edit the Settings.xml file, as described in Editing the Settings.xml File.

General Settings in ISVirtualPackage Table

Setting Name

Setting Value

Meaning

Provider

Semicolon separated list of Thinstall, AppV, and Citrix

Indicates virtual technologies to which to convert MSI packages.

MSIFile0, MSIFile1, etc

Absolute path to MSI

Indicates other MSI packages to suite together with the current one into one package.

VirtualPackageBuildOutputFolder

Absolute path to a directory

Instead of creating the converted virtual applications in a folder next to the source MSI, put them in a new folder under this specified location - this overrides the global redirect option in settings.xml.

ISVirtualRelease Table

The ISVirtualRelease table stores the relationship between InstallShield project releases and the virtual package type you want to build. This table is only relevant when you are editing an InstallShield Basic MSI project (not when you are editing an MSI package in the DirectEdit mode). If you make the relevant selections in the Assistants, it will modify the settings in this table.

Note:The settings in this table cannot be specified in the Settings.xml file.

General Settings in ISVirtualRelease Table

ISRelease_

ISProductConfiguration_

Name

Value

Meaning

Key to ISRelease

Key to ISProductConfiguration

BuildVirtualPackage

1

Build virtual package when associated release is built

Key to ISRelease

Key to ISProductConfiguration

Provider

Semicolon separated list of Thinstall, AppV, and Citrix

Indicates virtual technologies to which to convert MSI packages

Miscellaneous Virtual Conversion Settings

You can edit the following XML file to modify global settings that also govern the creation of virtual packages.

Miscellaneous Settings

Location

Name

Value

Meaning

System\Msi.xml

IgnoreTables

MSI table names

Control whether an error or warning is flagged for certain tables during conversion

System\Msi.xml

IgnoreCustomActions

MSI custom action names

List of custom actions that can safely be ignored during virtual conversion

System\Msi.xml

PropertyDefaults

MSI property names with given values

Default values to use for certain MSI properties rather than flagging them as warnings

Support\0409\settings.xml

GlobalBuildRedirectFolder

Absolute directory path

Instead of creating the converted virtual applications in a folder next to the source MSI, put them in a new folder under this specified location

Microsoft App-V Settings

The ISVirtualPackage table is the main table that stores package-wide App-V conversion settings. To edit this table, open the package in InstallShield and open the Direct Editor view. Also, if you make selections in the InstallShield Assistants, it will modify the settings in this table.

Note:If you want to modify the setting in the ISVirtualPackage table globally, you can edit the Settings.xml file, as described in Editing the Settings.xml File

The other tables listed here (directory, file, registry, shortcut) store App-V conversion settings related to a particular item in the package, such as a particular shortcut, file, registry entry, or directory.

Note:The settings in these four tables cannot be specified in the Settings.xml file.

ISVirtualPackage Table
ISVirtualDirectory Table
ISVirtualFile Table
ISVirtualRegistry Table
ISVirtualShortcut Table

ISVirtualPackage Table

The following are App-V settings in the ISVirtualPackage table.

App-V Settings in ISVirtualPackage Table

Name

Value

Default

Meaning

AppVName

 

Same as name of MSI

Specify package name

AppVServerURLHost

 

 

Server location of SFT file

AppVServerURLPort

 

 

Server location of SFT file

AppVServerURLProtocol

RTSP, RTSPS, FILE, HTTP, or HTTPS

 

Protocol to use to access SFT file location

AppVRootFolderName

 

8.3 name based on product name and version

Specify root folder name

AppVComments

 

 

SFT file comments

AppVOS

Bitwise or of flags representing OS

0

0 indicates OS independent. Otherwise, here is the OS list starting with bit 1: WinXP, WinXP64, Win2003Svr, Win2003TS, Win2003TS64, Win2008Svr, Win2008TS, Win2008TS64, WinVista, WinVista64, Win7, Win764, Win2008R2TS64

AppVDSC0, AppVDSC1, etc.

Absolute path to OSD or SFT file [ : MANDATORY]

 

Dynamic Suite Composition settings

AppVNoCompression

1

0

Compression setting - default is compressed

AppVPackageOptimization

Offline or Stream

Stream

Only the shortcut targets are put in feature block 1 (FB1) if Stream is selected. Otherwise the entire package is put in FB1.

AppVUpgrade

1

0

Enables creation of an upgrade package

AppVUpgradePreviousPackage

 

 

Absolute path to SFT from previous package that will be upgraded.

AppVUpgradeLatest

1

0

Will locate the most recently built App-V package based on modified timestamp on SFT files found in appropriately named sub-folders next to the MSI file.

AppVUpgradeAppendPackageVersion

1

1

Package version will be appended to the end of the SFT file name

AppVDiagFileSystem

1

0

Include File System Diagnostic tool - a shortcut is included to run cmd.exe from the physical System32 folder. This cmd.exe and any programs launched from it will have access to the virtual environment of the package

AppVDiagRegistry

1

0

Include Registry System Diagnostic tool - a shortcut is included to run regedit.exe from the physical Windows folder. It will have access to the virtual environment.

AppVTestLauncher

1

1

AppVLauncher.exe is copied next to the newly built App-V package. This tool can be used to easily test deploy App-V packages.

BuildMSI

1

0

Create a wrapper MSI file that can be used to deploy the App-V package

AppVMsiWrapperCompress

1

0

Compression setting for wrapper MSI

AppVPrereq

1

0

Set this option to include App-V client setup as a setup prerequisite for the wrapper MSI. It will be necessary to obtain a redistributable copy of the App-V client setup to use this feature.

APPVLOADING

1

0

Set this option to not include the SFT file in the wrapper MSI. The SFT file will be streamed from the server location specified in the OSD and manifest files.

AppVNoSpacesInFileNames

1

 

Will replace spaces in the SFT, OSD, and Icon file names with '_'.

AppVSpaceReplacementString

Some string

 

Use together with setting AppVNoSpacesInFileNames property to 1. Any spaces in SFT, OSD, and Icon file names will be replaced by the string specified in the value of this property. If the string 'EMPTYSTRING' is used, then spaces will just be removed.

AppVRuntimeDrive

Drive letter such as M:

Q:

App-V client drive to use

ISVirtualDirectory Table

The following are App-V settings in the ISVirtualDirectory table.

App-V Settings in ISVirtualDirectory Table

Directory_

Name

Value

Meaning

Key into Directory table

AppVUserData

1

If set, then treat this directory as user data. If unspecified, then default algorithm is used to determine whether to mark directory as user data or application data.

Key into Directory table

AppVOverride

1

Override directory contents during upgrade

ISVirtualFile Table

The following are App-V settings in the ISVirtualFile table.

App-V Settings ISVirtualFile Table

File_

Name

Value

Meaning

Key into File table

AppVUserData

1

If set, then treat this file as user data. If unspecified, then default algorithm is used to determine whether to mark file as user data or application data.

Key into File table

AppVOverride

1

Override file during upgrade

ISVirtualRegistry Table

The following are App-V settings in the ISVirtualRegistry table.

App-V Settings in ISVirtualRegistry Table

Registry_

Name

Value

Meaning

Key into Registry table

AppVOverride

1

If set, virtual application will only see the registry key contents in the virtual package and no child keys that may be present on the physical machine. Otherwise, virtual application will see only values in the virtual package, but will see child keys present on the physical machine, if they are not also present in the virtual package.

ISVirtualShortcut Table

The following are App-V settings in the ISVirtualShortcut table.

App-V Settings in ISVirtualShortcut Table

Shortcut_

Name

Value

Meaning

Key into Shortcut table

AppVApplication

0

A value of zero indicates that this shortcut will not be included in the converted App-V package.

VMWare ThinApp Settings

The ISVirtualPackage table is the main table that stores package-wide ThinApp conversion settings. To edit this table, open the package in InstallShield and open the Direct Editor view. Also, if you make selections in the Assistants, it will modify the settings in this table.

Note:If you want to modify the setting in the ISVirtualPackage table globally, you can edit the Settings.xml file, as described in Editing the Settings.xml File

The other tables listed here (directory, file, registry, shortcut) store ThinApp conversion settings related to a particular item in the package, such as a particular shortcut, file, registry entry, or directory.

Note:The settings in these four tables cannot be specified in the Settings.xml file.

ISVirtualPackage Table
ISVirtualDirectory Table
ISVirtualRegistry Table
ISVirtualShortcut Table

ISVirtualPackage Table

The following are ThinApp settings in the ISVirtualPackage table.

ThinApp Settings in ISVirtualPackage Table

Name

Value

Default

Meaning

ThinRemoveSandboxOnExit

1

0

Determines if sandbox is deleted when application exits

ThinSandboxRemovableDisk

1

0

Determines whether write operations to removable disks go to the disks or to sandbox

ThinSandboxNetworkDrives

1

0

Determines whether write operations to network drive go to network drive or to sandbox

ThinSandboxName

 

 

Name of directory that stores the sandbox

ThinActiveDirectory

1

0

Restrict access based on AD groups

ThinPermittedGroups

Semicolon separated AD group names

 

Only users belonging in the specified local or domain groups will be able to run the application

ThinAccessDeniedMsg

 

 

Message to display when access is denied

BuildMSI

1

0

Build a MSI that will install and register ThinApp package

ThinDisableTracing

1

0

Disable ThinApp tracing

ThinCompessionType

None/Fast

None

Compression setting

ThinDirectoryIsolationMode

Merged, WriteCopy, or Full

WriteCopy

Controls whether write operations are directed to the sandbox or physical drive

OptionalAppLinks

Semicolon separated list of absolute paths to ThinApp package EXE or DAT files

 

Used to establish optional AppLink relationship between ThinApp packages

RequiredAppLinks

Semicolon separated list of absolute paths to ThinApp package EXE or DAT files

 

Used to establish required AppLink relationship between ThinApp packages

AppSyncURL

 

 

HTTP, HTTPS, or File URL to web server that hosts application updates

AppSyncUpdatedMessage

 

 

Message to display to user upon update

AppSyncUpdateFrequency

Minutes (m), hours (h), days (d), and 0

 

The frequency with which to check for updates

AppSyncClearSandboxOnUpdate

1

0

Determines whether to clear sandbox after update

AppSyncExpirePeriod

Minutes (m), hours (h), days (d), and never

 

Number of days before application will stop working due to not being able to connect to server

AppSyncWarningPeriod

Minutes (m), hours (h), and days (d)

 

Start of warning period. After this ThinApp will check for an update each time the application starts

AppSyncWarningFrequency

Minutes (m), hours (h), and days (d)

 

Frequency of warnings to the user during the warning period

AppSyncExpireMessage

 

 

Message user sees when application cannot be run because it has failed to contact the server for the duration of the expiration period

AppSyncWarningMessage

 

 

Message user sees when application has not been able to contact the server for the duration of the warning period

ThinDiagCmd

1

0

Include File System Diagnostic tool

ThinDiagReg

1

0

Include Registry System Diagnostic tool

ISVirtualDirectory Table

The following are ThinApp settings in the ISVirtualDirectory table.

ThinApp Settings in ISVirtualDirectory Table

Directory_

Name

Value

Meaning

Key to Directory table

ThinIsolation

1 for default, 2 for Full, 4 for WriteCopy, and 8 for Merged

Sets isolation setting for a directory. Default setting is default (use overall package isolation setting)

ISVirtualRegistry Table

The following are ThinApp settings in the ISVirtualRegistry table.

ThinApp Settings in ISVirtualRegistry Table

Registry_

Name

Value

Meaning

Key to Registry table

ThinIsolation

1 for default, 2 for Full, 4 for WriteCopy, and 8 for Merged

Sets isolation setting for a registry key. Default setting is default (use overall package isolation setting)

ISVirtualShortcut Table

The following are ThinApp settings in the ISVirtualShortcut table.

ThinApp Settings in ISVirtualShortcut Table

Shortcut_

Name

Value

Meaning

Key into Shortcut table

ThinIsolation

0

A value of zero indicates that this shortcut will not be included in the converted ThinApp package.

Additional Settings

You can edit the following configuration files to further customize the conversion process of a ThinApp package.

Additional ThinApp Settings

Location

Name

Value

Meaning

System\Thinstall.xml

AlwaysBuildDatFile

true/false

Always put the application payload in a DAT file - even with only one shortcut

System\Thinstall.xml

PreserveMostPackageIniSettings

true/false

Start with existing package.ini file from previous build instead of from template package.ini. This has the potential of preserving many user customizations made directly to package.ini file.

System\Thinstall.xml

CreateBuildBatFile

true/false

Copy a template BAT file into the Interim folder that can be used to rebuild the ThinApp package without running the full MSI conversion virtual build process

System\Package.ini

 

 

Template package.ini file used in the virtual build process that can be customized somewhat

System\Thinapp.bat

 

 

Template BAT file that can be used to build ThinApp package directly without running full virtual build process

Editing the Settings.xml File

To edit the Settings.xml file, add a property element for each setting in the Virtualization/Properties section of the file. You can find the Settings.xml file in the following directory:

C:\Program Files\AdminStudio\2024\Repackager\Support\0409

Edit the following section of the file:

<Virtualization>

...

    <Properties>

        <!--Use this section to provide a global default for any setting

        that is found in the ISVirtualPackage table-->

        <!--<Property Name="AppVRuntimeDrive" Value="G:"/>-->

        <!--<Property Name="AppVServerURLPath" Value="%PackageName%_v%PackageVersion%" />-->

    </Properties>

</Virtualization>