Per-machine Installations

The per-machine installations of an application means that the application is available for all users of a computer. It also means that:

  • Shortcuts are installed to the All Users profile.
  • COM registration is always written to HKLM\Software\Classes.
  • On Windows 2000, at elevated privileges.
  • Icons and transforms are stored in %WINDOWS%\Installer\{ProductCode}.
  • The installer sets the following properties to the following values during per-machine installations.

Beginning with Windows Vista, applications should use the SHGetKnownFolderPath function and the KNOWNFOLDERID to determine the full path to the special folders. The names of the Windows Installer System Folder Properties remain unchanged. The extended functions of the Knownfolder API subsume all the functionality of the original versions. Existing applications that use the SHGetFolderPath function and the CSIDL will continue to work.

Property KNOWNFOLDERID CSIDL
DesktopFolder

The full path of the Desktop folder for All Users.

FOLDERID_PublicDesktop

Introduced in Windows Vista.

CSIDL_COMMON_DESKTOPDIRECTORY

Existed on Windows 2000.

ProgramMenuFolder

The full path of the Program Menu folder for All Users.

FOLDERID_CommonPrograms

Introduced in Windows Vista.

CSIDL_COMMON_PROGRAMS

Existed on Windows 2000.

StartMenuFolder

The full path of the Start Menu folder for All Users.

FOLDERID_CommonStartMenu

Introduced in Windows Vista.

CSIDL_COMMON_STARTMENU

Existed on Windows 2000.

StartUpFolder

The full path of the Start Up folder for All Users.

FOLDERID_CommonStartup

Introduced in Windows Vista.

CSIDL_COMMON_STARTUP

Existed on Windows 2000.

TemplateFolder

The full path of the Templates folder for All Users.

FOLDERID_CommonTemplates

Introduced in Windows Vista.

CSIDL_COMMON_TEMPLATES

Existed on Windows 2000.

AdminToolsFolder

The full path of the Administrative Tools folder for All Users.

FOLDERID_CommonAdminTools

Introduced in Windows Vista.

CSIDL_COMMON_ADMINTOOLS

Existed on Windows 2000.

AppDataFolder

Starting in Windows Vista, the full path of the Roaming folder for the current user; otherwise, the full path to the Application Data folder for the current user.

FOLDERID_RoamingAppData

Introduced in Windows Vista.

CSIDL_APPDATA

Existed on Windows 2000.

CommonAppDataFolder

The full path of the folder that contains the application data for All Users.

FOLDERID_ProgramData

Introduced in Windows Vista.

CSIDL_COMMON_APPDATA

Existed on Windows 2000.

FavoritesFolder

The full path of the Favorites folder for the current user.

FOLDERID_Favorites

Introduced in Windows Vista.

CSIDL_FAVORITES

Existed on Windows 2000.

PersonalFolder

Starting in Windows Vista, the full path of the Documents folder for the current user; otherwise, the full path of the My Documents folder or Personal folder for the current user.

FOLDERID_Documents

Introduced in Windows Vista.

CSIDL_PERSONAL

Existed on Windows 2000.

SendToFolder

The full path of the SendTo folder for the current user.

FOLDERID_SendTo

Introduced in Windows Vista.

CSIDL_SENDTO

Existed on Windows 2000.

FontsFolder

The full path of the System Fonts folder.

FOLDERID_Fonts

Introduced in Windows Vista.

CSIDL_FONTS

Existed on Windows 2000.

ProgramFilesFolder

The full path of the Program Files folder for the current user.

FOLDERID_ProgramFiles

FOLDERID_ProgramFilesX86

Introduced in Windows Vista.

Windows Vista:  FOLDERID_ProgramFilesX86 is the full path to the default folder for All Users.

CSIDL_PROGRAM_FILES

CSIDL_PROGRAM_FILESX86

Existed on Windows 2000.

CommonFilesFolder

The full path of the Common Files folder for the current user.

FOLDERID_ProgramFilesCommon

FOLDERID_ProgramFilesCommonX86

Introduced in Windows Vista.

CSIDL_PROGRAM_FILES_COMMON

CSIDL_PROGRAM_FILES_COMMONX86

Existed on Windows 2000.

WindowsFolder

The full path of the Windows folder for the current user.

FOLDERID_Windows

Introduced in Windows Vista.

CSIDL_WINDOWS

Existed on Windows 2000.

SystemFolder

The full path of the System folder for the current user.

FOLDERID_SystemX86

Introduced in Windows Vista.

CSIDL_SYSTEMX86

Existed on Windows 2000.

LocalAppDataFolder

The full path of the folder that contains local (nonroaming) applications.

FOLDERID_LocalAppData

Introduced in Windows Vista.

CSIDL_LOCAL_APPDATA

Existed on Windows 2000.

MyPicturesFolder

Starting in Windows Vista, the full path of the Pictures folder for the current user; otherwise, the full path of the My Pictures folder for the current user.

FOLDERID_Pictures

Introduced in Windows Vista.

CSIDL_MYPICTURES

Existed on Windows 2000.

See Also

Specifying a Per-User or Per-Machine Installation

Per-User Installations

Send comments about this topic to Microsoft

Build date: 3/9/2009