Profile Changes in Windows Vista and Windows Server 2008 and beyond
2010-10-27 09:31
387 查看
http://blog.stealthpuppy.com/windows/profile-changes-in-windows-vistalonghorn-server/
Windows Vista and Windows Server 2008 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/Windows Server 2008:
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:
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:
Windows Vista and Windows Server 2008 define the same variables while adding a couple more.
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.
UPDATE: Microsoft have an excellent reference document that details the profile changes in Windows Vista and how roaming profiles should managed in a Windows Vista environment. Check it out for more information that what I’ve listed here:
Windows Vista and Windows Server 2008 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/Windows Server 2008:
Old Path | New Path |
---|---|
Documents and Settings | Users |
Documents and Settings\Default User | Users\Default |
Documents and Settings\All Users\Application Data | ProgramData |
Documents and Settings\All Users\Start Menu | ProgramData\Microsoft\Windows\Start Menu |
Documents and Settings\All Users\Templates | ProgramData\Microsoft\Windows\Templates |
Documents and Settings\{username}\Local Settings\Application Data | Users\{username}\AppData\Local |
N/A | Users\{username}\AppData\LocalLow |
Documents and Settings\{username}\Application Data | Users\{username}\AppData\Roaming |
Documents and Settings\{username}\Cookies | Users\{username}\AppData\Roaming\Microsoft\Windows\Cookies |
Documents and Settings\{username}\NetHood | Users\{username}\AppData\Roaming\Microsoft\Windows\Network Shortcuts |
Documents and Settings\{username}\PrintHood | Users\{username}\AppData\Roaming\Microsoft\Windows\Printer Shortcuts |
Documents and Settings\{username}\Recent | Users\{username}\AppData\Roaming\Microsoft\Windows\Recent |
Documents and Settings\{username}\SendTo | Users\{username}\AppData\Roaming\Microsoft\Windows\SendTo |
Documents and Settings\{username}\Start Menu | Users\{username}\AppData\Roaming\Microsoft\Windows\Start Menu |
Documents and Settings\{username}\Templates | Users\{username}\AppData\Roaming\Microsoft\Windows\Templates |
N/A | Users\{username}\Contacts |
Documents and Settings\{username}\Desktop | Users\{username}\Desktop |
Documents and Settings\{username}\My Documents | Users\{username}\Documents |
N/A | Users\{username}\Downloads |
Documents and Settings\{username}\Favorites | Users\{username}\Favorites |
N/A | Users\{username}\Links |
Documents and Settings\{username}\My Documents\My Music | Users\{username}\Music |
Documents and Settings\{username}\My Documents\My Pictures | Users\{username}\Pictures |
N/A | Users\{username}\Saved Games |
N/A | Users\{username}\Searches |
Documents and Settings\{username}\My Documents\My Videos | Users\{username}\Videos |
Documents and Settings\All Users | Users\Public |
Documents and Settings\All Users\Desktop | Users\Public\Desktop |
Documents and Settings\All Users\Documents | Users\Public\Documents |
Documents and Settings\All Users\Favorites | Users\Public\Favorites |
Documents and Settings\All Users\Documents\My Music | Users\Public\Music |
Documents and Settings\All Users\Documents\My Pictures | Users\Public\Pictures |
Documents and Settings\All Users\Documents\My Videos | Users\Public\Videos |
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 |
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 Windows Server 2008 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.
UPDATE: Microsoft have an excellent reference document that details the profile changes in Windows Vista and how roaming profiles should managed in a Windows Vista environment. Check it out for more information that what I’ve listed here:
相关文章推荐
- Changes to Remote Administration in Windows Server 2008
- 如何在Windows Vista and Windows Server 2008 中禁用IPv6?
- Retiring Windows NT Server 4.0: Changes in Product Availability and Support
- Delete a user profile in Windows Server 2008 and later
- FILESTREAM Configuration and Setup Changes in SQL Server 2008 February CTP
- Using Credential Management in Windows XP and Windows Server 2003 【转载】
- 转载:Plan freezing and other plan guide enhancements in SQL Server 2008
- Index Fragmentation Report in SQL Server 2005 and 2008
- Windows Vista/Server 2008 中 IIS 7.0 的开启方法
- Messy Code in Windows Server 2008 R2 English Edition
- Environment Variables in Windows Vista and Windows 7
- 永久激活 Windows 7/Vista/Server 2008和Office 2010 的“MAK”密钥
- Adding a new disk in windows server 2008 failover clustering
- How to change service accounts and service account passwords in SharePoint Server 2007 and in Windows SharePoint Services 3.0
- AppInit_DLLs in Windows 7 and Windows Server 2008 R2
- How to install ASP.NET 1.1 with IIS7 on Vista and Windows 2008
- Gratuitous ARP and DAD in Windows XP, Windows 7/Vista, Windows 8 and Failover Cluster
- Disable UAC in Windows Server 2008
- 微软官方发布Windows Vista/Server 2008 SP2 RC 下载
- How to install an SSH Server in Windows Server 2008