c:\windows\system32\config\systemprofile\desktop was missing or could not be accessed.
Despite numourous log-on and log-off's as different local and domain users, it kept loading a TEMP profile.
Some of the things I initially tried in an attempt to fix it were:
Restoring c:\windows\system32\config\systemprofile from an earlier backup, which had no effect.
Deleting profiles from System Properties> Advanced Tab > User Profiles and the registry HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/NT/
Manually creating a 'desktop' folder in c:\windows\system32\config\
These steps did stop the error message coming up but it was still loading a TEMP profile every time a user logged on….
Finally, I found a fix!
1) Restore c:\users\default from an earlier backup
Logon as local administrator
Change the owner of c:\users\default to Administrators
Give Administrators (local) and Administrator (domain) full control
Everyone Read and Modify permissions.
2) Next, open the registry, HKLM\Software\Microsoft\WindowsNT\ CurrentVersion\ProfileList and delete the key (subfolder) containing the details of the user whose profile is having the issue.