Click to Rate and Give Feedback
MSDN
MSDN Library
Windows Development
Windows Installer
Properties
Property Reference
 TempFolder property
TempFolder property

Applies to: desktop apps only

The installer sets the TempFolder property to the full path to the Temp folder.

Authors should not need to set the TempFolder property. Windows Installer uses the GetTempPath function to retrieve the path of the directory designated for temporary files and to set this property.

Remarks

A common value for this property is C:\Temp.

Requirements

Version

Windows Installer 5.0 on Windows Server 2008 R2 or Windows 7. Windows Installer 4.0 or Windows Installer 4.5 on Windows Server 2008 or Windows Vista. Windows Installer on Windows Server 2003, Windows XP, and Windows 2000. See the Windows Installer Run-Time Requirements for information about the minimum Windows service pack that is required by a Windows Installer version.

See also

Properties

 

 

Send comments about this topic to Microsoft

Build date: 2/3/2012

Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
We have seen the temp folder incorrectly resolved to a different user's path      skippee888   |   Edit   |   Show History
The situation where we see this is when the product is upgraded by a different user. Calls to run executables using the calculated temp path result in the installer looking for the binary in the path of the previous installing user instead of the path of the user who is running the current installer. Any help to clarify or work around this problem would be greatly appreciated.
Tags What's this?: Add a tag
Flag as ContentBug
TempFolder pointing to another user profile      barisdemir   |   Edit   |   Show History
Hi,
We have a product and we use custom action to extract some of our files to TempFolder. Unfortunately recently we ran some issues that the extraction did not work since the Tempfolder does not exsit. When we looked further we found that the TempFolder is pointing to another users profile. Below are some properties from the install log. I replaced the client specific data but if you look at all the properties point ro user1 where TempFolder point to user2. How is this possible. PS: One possibility is that the user2 used to do the installations on this server and now user1 is doing the upgrades but still, shouldn't the TempFolder point to user1 as well?
Property(S): ROOTDRIVE = E:\
Property(S): LogonUser = user1
Property(S): VersionNT = 502
Property(S): TARGETDIR = E:\
Property(S): ALLUSERSPROFILE = E:\
Property(S): AdminUser = 1
Property(S): INSTALLDIR = D:\Program Files\myCompany\2008\
Property(S): DesktopFolder = C:\Documents and Settings\All Users\Desktop\
Property(S): StartMenuFolder = C:\Documents and Settings\All Users\Start Menu\
Property(S): ProgramMenuFolder = C:\Documents and Settings\All Users\Start Menu\Programs\
Property(S): StartupFolder = C:\Documents and Settings\All Users\Start Menu\Programs\Startup\
Property(S): AdminToolsFolder = C:\Documents and Settings\All Users\Start Menu\Programs\Administrative Tools\
Property(S): MyPicturesFolder = C:\Documents and Settings\user1\My Documents\My Pictures\
Property(S): LocalAppDataFolder = C:\Documents and Settings\user1\Local Settings\Application Data\
Property(S): CommonAppDataFolder = C:\Documents and Settings\All Users\Application Data\
Property(S): TemplateFolder = C:\Documents and Settings\All Users\Templates\
Property(S): SendToFolder = C:\Documents and Settings\user1\SendTo\
Property(S): RecentFolder = C:\Documents and Settings\user1\Recent\
Property(S): TempFolder = C:\DOCUME~1\user2\LOCALS~1\Temp\
Property(S): PrintHoodFolder = C:\Documents and Settings\user1\PrintHood\
Property(S): USERPROFILE = E:\
Property(S): PersonalFolder = C:\Documents and Settings\user1\My Documents\
Property(S): NetHoodFolder = C:\Documents and Settings\user1\NetHood\
Property(S): FavoritesFolder = C:\Documents and Settings\user1\Favorites\
Property(S): AppDataFolder = C:\Documents and Settings\user1\Application Data\
Property(S): System16Folder = C:\WINDOWS\system\
Property(S): SystemFolder = C:\WINDOWS\system32\
Property(S): WindowsVolume = C:\
Property(S): WindowsFolder = C:\WINDOWS\
Property(S): MsiNTProductType = 3
Property(S): ServicePackLevelMinor = 0
Property(S): ServicePackLevel = 2
Property(S): WindowsBuild = 3790
Property(S): VersionMsi = 3.01
Property(S): ApplicationUsers = AllUsers
Property(S): ALLUSERS = 1
Property(S): APP_VERSION = 2008
Property(S): INSTALLLEVEL = 100
Property(S): REINSTALLMODE = vamus
Property(S): INSDIR = D:\Program Files\myCompany\2008\
Property(S): VersionDatabase = 200
Property(S): PRODUCTLANGUAGE = 1033
Property(S): CLIENTPROCESSID = 908
Property(S): CLIENTUILEVEL = 3
Property(S): CURRENTDIRECTORY = C:\WINDOWS\system32
Property(S): LIMITUI = 1
Property(S): REINSTALL = ALL
Property(S): ACTION = INSTALL
Property(S): PackagecodeChanging = 1
Property(S): ProductToBeRegistered = 1
Property(S): ProductState = 5
Tags What's this?: Add a tag
Flag as ContentBug
TempFolder behaves oddly when logged in via Terminal Services      j o m   |   Edit   |   Show History
@woter Is that what you are up to? In some situations I don't get that last /2 (or whatever the sessionID is ).
Tags What's this?: Add a tag
Flag as ContentBug
Problems with %TEMP% and property("TempFolder")      woter324   |   Edit   |   Show History

I have an instance where running a VBScript CA inside an msi.

cmd: %TEMP% = "C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp

session.property("TempFolder") = C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\2

Why the difference? Where does the system get "TempFolder" from? It only happens on Win Server 2003 std SP1. Win XP SP2 is fine.

As WindowsInstaller is incapable of forcing an overwrite regardles of file date, I have set INSTALLDIR to %TEMP% then use VBScript to deploy into the correct place.

Any help would be apreciated : woter1@gmail.com

Tags What's this?: Add a tag
Flag as ContentBug
Processing
© 2012 Microsoft. All rights reserved. Terms of Use | Trademarks | Privacy Statement
Page view tracker