今天测试一个软件,需要在另一个用户环境下进行测试,而该用户账户从来没有在我的电脑上面登录过。就在登录该用户账户的时候,系统提示:User Profile Service 服务登陆失败,无法加载用户配置文件,然后就退回到登录界面了。

为了查出是什么原因,笔者回到自己平时使用的用户环境(管理员),打开 Windows 事件查看器,进入“Windows 日志”——“应用程序”,找到事件来源为“User Profile Service”的日志,看到有两条日志,如下图:
1、提示”Windows 找不到本地配置文件,正在使用临时配置文件让你登录。当你注销时,对此配置文件所作的更改将会丢失“

2、提示”Windows 不能让你登录,因为不能加载你的配置文件。请检查你是否连接到网络,而且网络是否工作正常。详细信息 – 拒绝访问。“

以上两个信息是有先后顺序的,先是 Windows 找不到本地配置文件,正在使用临时配置文件让使用人登录,但发现临时配置文件所依赖的项目无法加载,所以连临时配置文件都无法创建,因此无法登录到新用户。
那为什么会无法加载临时配置文件呢?这里我们需要了解一个机制,就是当使用一个新的用户账户登录 Windows 系统时,需要先在用户配置目录(默认是 C:\Users)下创建一个以这个新用户命名的新目录,然后把用户配置目录中Default目录(默认是 C:\Users\Default)内的所有文件复制到新用户目录内,并依据这些文件创建一个新的用户环境。假如Default目录里面的文件不完整或者损坏,则可能会导致无法使用新用户登录系统的情况发生。
于是,笔者先是查看了一下注册表中关于用户目录的配置项,看看Default目录默认的路径在哪里(注册表位置在:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList,查看名为”Default“的注册表值):

如上图所示,注册表中包括”Default“在内的所有设置均为系统原样,未改动过,而笔者电脑的系统分区为C:,则Default目录的路径就是:C:\Users\Default。随后笔者打开这个目录(需要去掉”文件夹选项“的”隐藏受保护的操作系统文件“并且选择”显示隐藏的文件、文件夹和驱动器“),看了一眼就发现问题:

上面截图所示,这个目录里面只有一个AppData目录和若干基础配置文件,其它文件夹(特别是Desktop这个桌面文件夹)都不见了踪影,这个就是导致无法使用新用户登录系统的原因了,因为所需的Default目录内的文件和目录不完整!
找到原因之后,解决起来也很简单,就是到别的电脑(最好是操作系统版本相同的电脑)上面,把Default目录内的所有文件,复制到有问题电脑的Default目录内(可以替换已有的文件),然后再使用新用户重新登录即可。如果无法找到另一台相同系统的电脑,我们可以尝试从Windows系统安装介质中提取默认的Default用户配置文件。具体步骤为:
1、挂载Windows安装ISO镜像。
2、打开镜像中的sources/install.wim(或install.esd)文件(可以使用7-Zip或DISM工具)。
3、从install.wim中提取Default用户配置文件,路径通常为:\Users\Default。
4、将提取的文件复制到C:\Users\Default。
