Solving the Windows Roaming Profiles Nightmare

Novell Cool Solutions: Trench
By Henrik Jungermann

Digg This - Slashdot This

Posted: 29 Apr 2004

Updated with new suggestion

For years we have had problems with Roaming Profiles in the Windows Environment. Profiles will not get saved, the local profile directory gets jammed up with username.xxx directories. During logout the message "Saving your settings" goes on for 60 seconds until the roaming process finally times out.

I finally decided to find a long-term solution. During my research I found that during logout some software running on the PC can keep the user hive in the registry open and block the roaming process to create and copy the NTUSER.DAT file to the server.

I found a great piece of software written by Robin Caron, called User Profile Hive Cleanup service (UPHClean) that totally eliminates my problem. The software runs as a background service and kicks in during logout and makes sure that the registry is closed correctly. You can download UPHClean from Microsoft.

Here is some information from the readme.txt included in the download.


UPHClean is a service that once and for all gets rid of problems with user profile not unloading.

You are having profile unload problems if you experience slow logoff (with Saving Settings for most of the time while logging off), roaming profiles that do not reconcile, or the registry size limit is reached.


Many system and service processes do work on behalf of users. When the work is done the system or service process is responsible for releasing handles it has to the user profile hive. If this is not done by the service as the user logs off the profile cannot be unloaded.

This problem in code can be caused by improper coding either in Microsoft software or 3rd party software (e.g. printer drivers, virus scanner service, etc). With the information provided by the system there is no way to find out what software needs to be corrected to allow profiles to unload.


Windows NT4:
The system gives up immediately on failure to unload the profile and the (roaming) profile is not reconciled.

Windows 2000:
The system attempts to unload the profile 60 times at 1 second intervals. This retry logic rarely helps so in most cases after 60 seconds of the user waiting at the Saving Settings message box the system gives up and roaming profiles are not reconciled. The number of retries can be changed to allow the user to log off faster (this can be done using the policy under Computer Configuration, Administrative Template, System, User Profiles, Maximum retries to unload and update user profile)

Windows XP and 2003:
The profile is reconciled using a copy of the contents of the registry. The user is not made to wait as in Windows 2000. The problem left is that the computer cannot recover the memory the profile uses until it can be unloaded. Also in some cases (e.g. using anonymous logons) you may find that you cannot log on if the profile cannot be unloaded.



To install it silently, I use

msiexec /i %systemdrive%\INSTALL\stdsoft\Uphc\UPHClean-Setup.msi /qb

Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com

© Micro Focus