System Folder Definition Placeholders
Different Windows systems may have different locations of standard Windows folders. For example, the location of the Program Files, ProgramData and other system folders may be different and depends on a particular system. You need to take that into account when you create an MSI, you cannot use absolute paths to the standard system folders. An MSI fails to deploy if it uses absolute path to system folders and these folders are missing on the system. Instead, you can use so-called system folders placeholders that represent well-known system locations and are automatically converted to correct file system paths when a package is deployed.
When you use Repackage Installation Wizard to monitor an installation, the program automatically converts captured absolute paths to system folders. In the File System editor you can select a system folder to add a file into it when adding a file manually. You can automatically covert absolute paths to system folders by executing the Roll All System Folders action from the context menu of the project.
System folders placeholders are represented in the project with a set of predefined names to well-known system paths. In the project they are represented with special names started with ${ and ended with }$, for example ${ProgramFilesFolder}$.
System folders are replaced with the file system locations actual for the system where the package is deployed, so file system resources are created in correct locations.
System folder placeholders can be used in different places within the project and in the program settings. In the File System section of the project system folders are used to configure paths to the files and folders to be deployed. System folders can be used in Custom Actions to specify a path to the deployed script or executable to be invoked after deployment. System folder definition placeholders can be used to configure filters in the program Preferences.
Below is a list of the available placeholders for system folder definitions.
Placeholder |
Replacement |
---|---|
AdminToolsFolder |
The file system directory that is used to store administrative tools for the current user. |
AppDataFolder |
The Application Data folder for the current user. |
CommonAdminToolsFolder |
The file system directory that contains administrative tools for all users of the computer. |
CommonAppDataFolder |
The Application Data folder that is common for all users. |
CommonDesktopFolder |
The folder for the Desktop content that is common for all users. |
CommonDocumentsFolder |
The file system directory that contains documents that are common to all users. |
CommonFiles64Folder |
The Common Files folder for 64-bit applications. |
CommonFilesFolder |
The Common Files folder for 32-bit applications. |
CommonProgramMenuFolder |
The folder for the All Programs menu content that is common for all users. |
CommonStartMenuFolder |
The folder for the Start menu content that is common for all users. |
CommonStartupFolder |
The folder for the programs executed on startup for all users. |
CurrentUserProfileFolder |
The current user's profile folder. |
DesktopFolder |
The current user's Desktop content folder. |
FavoritesFolder |
The Favorites folder for the current user. |
FontsFolder |
The folder used to install fonts to. |
LocalAppDataFolder |
The folder that serves as a data repository for local (nonroaming) applications for the current user. |
MyPicturesFolder |
The Pictures folder for the current user. |
NetHoodFolder |
The file system directory that contains the link objects that may exist in the My Network Places virtual folder. |
PersonalFolder |
The Documents folder for the current user. |
PrintHoodFolder |
The file system directory that contains the link objects that can exist in the Printers virtual folder. |
ProgramFiles64Folder |
The Program Files folder for 64-bit applications. |
ProgramFilesFolder |
The Program Files folder for 32-bit applications. |
ProgramMenuFolder |
The folder for the All Programs menu content for the current user. |
RecentFolder |
The file system directory that contains shortcuts to the user's most recently used documents. |
SendToFolder |
The folder tor the Send To menu content for the current user. |
StartMenuFolder |
The folder for the Start menu content for the current user. |
StartupFolder |
The folder for the programs executed on startup for the current users. |
System16Folder |
The System folder for 16-bit libraries. |
System64Folder |
The System folder for 64-bit libraries. |
SystemFolder |
The System folder for 32-bit libraries. |
TempFolder |
The file system directory that is designated for temporary files. |
TemplateFolder |
The Templates folder for the current user. |
UserProfilesFolder |
The system user profiles folder. |
WindowsFolder |
The folder the operating system is installed to. |
WindowsVolume |
The volume the operating system is installed on. |
Please note that specific system folders can be indefinite on specific operating systems, so you should make sure that the operating systems you have defined as target during a deployment package creation process support the folders you have defined.