Using a Directory Property in a Path

The directories in the Directory table specify the layout of an installation. When the Windows Installer resolves these directories during the CostFinalize action, the keys in the Directory table become properties set to directory paths. The installer also always sets a number of standard System Folder Properties to system folder paths.

The values of the System Folder Properties are guaranteed to end in a directory separator. The values of all other properties entered in the Directory table are only guaranteed to end in a directory separator after the installer has run the CostFinalize action. Before costing has completed, the values of properties entered in the Directory table which are not System Folder Properties may not end in a directory separator. Therefore, if your installation sets directory properties using custom actions in the package, the values on reference might not end with a directory separator.

Directory properties ending with a directory separator can therefore be used in a path string without explicitly including the directory separator. For example, if the value of DirectoryProperty ends with a directory separator, the following string correctly specifies the path to file in subdirectory


and the following path string is incorrect.