userinit.exe文件损坏或被替换导致登录后自动注销,需用winpe启动盘进入离线环境,先恢复该文件本体,再修正winlogon注册表项(userinit值设为c:\windows\system32\userinit.exe,),并清理病毒残留服务与隐藏账户。

电脑开机后点用户名就自动注销,根本进不了桌面,连安全模式和“最后一次正确配置”都无效,说明系统关键初始化文件或注册表项已被破坏,必须绕过当前系统直接修复底层组件。
确认userinit.exe文件是否存在
准备一个Windows PE启动U盘(如微PE、深山红叶PE),将U盘插入故障电脑→重启并从U盘启动→进入PE桌面后,打开“此电脑”,定位到系统盘(通常是C盘)→依次进入 C:\Windows\System32 目录。
查找是否存在 userinit.exe 文件。若文件图标为灰色或显示“找不到”,或双击提示“不是有效的Win32应用程序”,即判定该文件已损坏或被替换。此时不能跳过这一步直接改注册表——【没有userinit.exe本体,改注册表毫无意义】。
恢复userinit.exe文件本体
方法一:从正常Windows机器拷贝
在另一台同版本(如均为Win10 22H2或均为Win7 SP1)的正常电脑上,进入 C:\Windows\System32,复制 userinit.exe 文件→粘贴至U盘根目录→回到PE环境,将该文件复制覆盖到故障机的 C:\Windows\System32\ 下(覆盖前可先重命名原文件为 userinit.bak 备查)。
方法二:从安装镜像提取(适用于无备用机场景)
在PE中打开“DISM++”工具→点击“映像管理”→挂载本机Windows安装镜像(通常位于C:\sources\install.wim 或 U盘中的win10.iso)→展开路径 Windows\System32\ →找到 userinit.exe →右键“导出”到 C:\Windows\System32\ 并确认覆盖。
修正Winlogon注册表项
第一步:加载目标系统注册表
在PE中按 Win+R 输入 regedit 打开注册表编辑器→点击 HKEY_LOCAL_MACHINE →顶部菜单栏选择“文件”→“加载配置单元”→浏览到 C:\Windows\System32\Config\ →选中 SOFTWARE 文件→在弹出框中输入临时项名,例如 FixWinlogon。
第二步:定位并修改Userinit键值
展开 HKEY_LOCAL_MACHINE\FixWinlogon\Microsoft\Windows NT\CurrentVersion\Winlogon →右侧找到名为 Userinit 的字符串值→双击编辑→将其数值数据严格设为:C:\Windows\system32\userinit.exe,(注意末尾英文逗号不可省略,这是系统要求的分隔符)→点击确定。
第三步:卸载配置单元
返回左侧树形列表,右键点击刚加载的 FixWinlogon 项→选择“卸载配置单元”→确认卸载。这一步不做会导致注册表残留,下次启动仍可能失败。
清除残留病毒启动项
在PE中再次打开注册表编辑器→加载 C:\Windows\System32\Config\SYSTEM(临时项名设为 FixSystem)→依次展开 HKEY_LOCAL_MACHINE\FixSystem\ControlSet001\Services →逐个检查右侧“Start”值为 2 或 3 的服务项,重点排查名称含 igw、img、lyloadmr、loader 等异常字符串的服务→右键删除整项。
再加载 C:\Windows\System32\Config\SAM(临时项名设为 FixSam)→展开 HKEY_LOCAL_MACHINE\FixSam\Domains\Account\Users\Names →查看是否有可疑用户名(如 admin123、system32svc)→若有,右键对应子项→删除。这些是病毒伪造的隐藏账户,不清理会持续触发注销。
重启并验证修复结果
退出PE环境→拔掉U盘→正常重启电脑→在登录界面输入密码→观察是否出现桌面背景并保持稳定。若仍注销,立即重新进入PE,检查 C:\Windows\System32\userinit.exe 文件属性中“数字签名”是否有效(右键→属性→数字签名选项卡),无效则说明文件被二次篡改,需换用另一台干净机重新提取。











