Windows 10 21H2 LTSC无人值守安装时SetupComplete.cmd不运行怎么办?
Windows 10 21H2 LTSC 无人值守安装SetupComplete.cmd不执行解决方案
基础合规检查
- 确认文件路径与命名正确:必须存放在WIM镜像的
\Windows\Setup\Scripts\SetupComplete.cmd路径下,关闭系统文件扩展名隐藏,确认文件后缀是.cmd而非.txt - 确认文件权限正常:SYSTEM账户必须拥有该文件的读取、执行权限,可在挂载WIM后右键文件→安全,为SYSTEM账户授予完全控制权限
- 确认脚本本身可正常运行:在同版本Windows 10 21H2系统中直接双击运行脚本,确认没有语法错误、没有依赖资源缺失(比如调用的第三方工具路径错误),建议先写极简测试脚本验证执行逻辑。
应答文件(unattend.xml)必要配置
- 在
specialize配置阶段的Microsoft-Windows-Deployment组件下,确保ExtendOSPartition配置正确,没有强制截断系统安装收尾流程 - 禁止在
oobeSystem阶段配置SkipUserOOBE为true,Windows 10 1709之后版本跳过OOBE会直接终止SetupComplete.cmd的执行逻辑 - 可在应答文件中添加注册表配置强制启用脚本执行,对应路径为
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\RunSetupComplete,值类型为DWORD,数值为1
Surface Pro 7+专属适配设置
- 在
specialize阶段添加Microsoft-Windows-EnhancedStorage-Adm组件配置,将DisableDeviceEncryption设置为true,关闭Surface默认的自动设备加密预配,避免加密过程中系统分区权限不足导致脚本无法被调用 - 若提前注入了Surface专属驱动包,可先移除驱动包测试脚本是否正常执行,排除驱动预安装流程打断系统Setup收尾阶段的可能性
排错方法
- 查看系统安装日志定位问题:打开
C:\Windows\Panther\setupact.log,搜索SetupComplete关键词,可查看系统调用脚本的状态与错误码,错误码2代表文件不存在,错误码5代表权限不足 - 用最简测试脚本验证流程:将SetupComplete.cmd内容替换为以下内容,若安装后生成C:\test_success.log则说明原脚本本身存在问题:
@echo off echo test success > C:\test_success.log
内容的提问来源于stack exchange,提问作者Atom
相关产品推荐
相关产品推荐

