The current problem is that I'm getting some sort of permission error when trying to load the registry hive for the impersonated user (I generally log on as Owner).
SE_TCB_NAME
SE_CHANGE_NOTIFY_NAME
SE_IMPERSONATE_NAME
SE_ASSIGNPRIMARYTOKEN_NAME
SE_INCREASE_QUOTA_NAME
SE_RESTORE_NAME
In order for LoadUserProfile to work on Windows XP you need to add the following permissions to the ASPNET account:
Act as part of the operating system
Backup files and directories
Restore
files and directories
Replace a process level token
Bypass traverse checking
Impersonate
client after authenticaion
Adjust memory quotas for a process
AdjustTokenPrivileges() may be the answer (done this now... it does not seem to help)