The OS doesn't have built-in functionality to support what you're asking for. You could hack the registry in each profile to refer to a common set of folders (Desktop, Start Menu, Documents, etc) for both users, but there's no built-in method for doing this. I suppose you could also hack the Profile List in the registry to load the an NTUSER.DAT / HKEY_CURRENT_USER hive with proper permissions specified within the hive for both users (which, provided both users don't logon at once via "Fast User Switching" would probably work). In a domain environment you could use Folder Redirection and roaming user profiles with a common directory to accomplish some of what you're trying to do but sharing the NTUSER.DAT is always going to be a dodgy hack.
All-in-all what you're asking for is going to be a messy hack, at best.
Edit:
I'm sitting in a hospital waiting for my wife's best friend to give birth so I have some time to play around w/ an WinXP VM. I was able to successfully do what you're looking for with one major caveat.
I created a user named "bob" and another user named "tom".
I logged-on as "bob" first. I opened regedit
and modified the "Permissions..." settings on HKEY_CURRENT_USER
to include "tom / Full Control" in addition to the current permission. I also modified the permissions on HKEY_CURRENT_USER\Software\Classes
to include "tom / Full Control".
I added "tom / Full Control" on the C:\Documents and Settings\bob
folder.
I logged-off and logged-on as "tom". This caused a C:\Documents and Settings\tom
folder to be created. I immediately logged-off.
I logged-on as "Administrator" and deleted the "C:\Documents and Settings\tom" folder.
I opened regedit
and navigated to HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ProfileList
. I moved through the subkeys there until I located the entry that referenced C:\Documents and Settings\tom
in the ProfileImagePath
value. I modified the value to reflect C:\Documents and Settings\bob
.
I logged-off and logged-on as "bob". I modified the desktop background and made a couple of shortcuts on the desktop.
I logged-off and logged-on as "tom". I was immediately greeted with an error loading the profile and taken back to the logon dialog. The error was "Windows cannot log you on because your profile cannot be loaded. Check that you are connected to the network, or that your network is functioning correctly. If this problem persists, contact your network administrator. DETAIL - The process cannot access the file because it is being used by another process."
I logged-on as "Administrator" and looked at the event log. I found an event in the Application event log, ID 1608, source Userenv, indicating "Windows was unable to load the registry. This is often caused by insufficient memory or insufficient security rights. DETAIL - The process cannot access the file because it is being used by another process. for C:\Documents and Settings\bob\Local Settings\Application Data\Microsoft\Windows\UsrClass.dat".
I examined HKEY_USERS
with regedit
and found that the bob UsrClass.dat
file was no longer loaded. I logged-off and logged-on as "tom" successfully.
While logged-on as "tom" I found that the desktop background was as I'd set while logged-on as "bob" and the shortcuts I created on the Desktop while logged-on as "bob" were visible. I changed the desktop background again, deleted one of the shortcuts, and created a document in the "My Documents" folder.
I logged-off, waited 30 seconds, and logged-on as "bob". I found that the desktop background was as I'd left it when I logged-off from the "tom" account. The shortcut I deleted as "tom" was gone. The document I created in "My Documents" while logged-on as "tom" was visible.
This should do what you want. You need to wait, between logons, for Windows to unload the user's registry hives. This doesn't happen immediately. Worse, if you have a piece of software that holds a handle open to one of the users' registries you may find that you can't logon as the other use without either rebooting between logons or installing something like the User Profile Hive Cleanup Service.