- Get link
- X
- Other Apps
Thanks to Arron Parker for his writeup on the changes
Profile Changes in Windows Vista/Longhorn Server
by Aaron Parker on Friday, August 25, 2006
in Windows
Windows Vista and Longhorn Server introduce a number of new user profile paths and environment variables that differ from earlier versions of Windows and these changes may have an impact on scripts such as logon scripts and application install scripts. Most scripts should work correctly – VBScript scripts that use system functions to find folder paths should work as expected, however batch scripts that use environment variables or hard codes scripts will require modifications. Here’s a short run down of the changes.
The following table lists the old profile path and the corresponding new path under Windows Vista/Longhorn Server:
Old Path | New Path |
\Documents and Settings | \Users |
\Documents and Settings\Default User or %LOGONSERVER%\NETLOGON\Default User | \Users\Default or %LOGONSERVER%\NETLOGON\Default User.v2 |
\Documents and Settings\ | \Users\ |
\Documents and Settings\ | \Users\ |
\Documents and Settings\ | \Users\ |
\Documents and Settings\ | \Users\ |
N/A | \Users\ |
N/A | \Users\ |
N/A | \Users\ |
\Documents and Settings\ | \Users\ |
\Documents and Settings\ | \Users\ |
\Documents and Settings\ | \Users\ |
\Documents and Settings\All Users | \Users\Public |
\Documents and Settings\All Users\Start Menu | \ProgramData\Microsoft\Windows\Start Menu |
\Documents and Settings\All Users\Desktop | \Users\Public\Desktop |
Folders to take note of here are the folders in the All Users path. Many older applications that use out of date methods to resolve system folders, will resolve paths under \ProgramData when looking for common locations. For example the common desktop may be resolved as \ProgramData\Desktop, however this is actually a junction point for \Users\Public\Desktop. A DIR /A:H listing in \ProgramData folder reveals the following junction points:
Path | Points To |
\ProgramData\Application Data | \ProgramData |
\ProgramData\Desktop | \Users\Public\Desktop |
\ProgramData\Documents | \Users\Public\Documents |
\ProgramData\Favorites | \Users\Public\Favorites |
\ProgramData\Start Menu | \ProgramData\Microsoft\Windows\Start Menu |
\ProgramData\Templates | \ProgramData\Microsoft\Windows\Templates |
These junction points should offer backward compatibility for older applications, however I have found that some of my installation scripts are not cleaning up shortcuts from the public desktop as expected.
There are also differences in environment variables between the new version of Windows and the older versions. Windows Server 2003 and below define the following variables relating to profiles:
ALLUSERSPROFILE=C:\Documents and Settings\All Users
APPDATA=C:\Documents and Settings\aaron\Application Data
HOMEPATH=\Documents and Settings\aaron
TEMP=C:\DOCUME~1\aaron\LOCALS~1\Temp
TMP=C:\DOCUME~1\aaron\LOCALS~1\Temp
USERPROFILE=C:\Documents and Settings\aaron
Windows Vista and Longhorn Server define the same variables while adding a couple more.
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\aaronp\AppData\Roaming
HOMEPATH=\Users\aaronp
LOCALAPPDATA=C:\Users\aaronp\AppData\Local
ProgramData=C:\ProgramData
PUBLIC=C:\Users\Public
TEMP=C:\Users\aaronp\AppData\Local\Temp
TMP=C:\Users\aaronp\AppData\Local\Temp
USERPROFILE=C:\Users\aaronp
In practice, I’ve found that scripts that reference locations such as %ALLUSERSPROFILE%\Desktop, are not performing actions as intended and will have to be updated to use %PUBLIC% instead. Certainly something that requires more investigation.
- Get link
- X
- Other Apps
Comments
Post a Comment