由于多种原因,此 Sysrep 可能无法验证您的 Windows 安装。您需要导航到 C:WindowsSystem32SysprepPanther 目录以获取详细的错误描述。使用任何文本编辑器(例如记事本)打开 sysprep 日志文件 (setupact.log)。运行命令:
notepad %windir%system32Syspreppanthersetupact.log
从下到上滚动 setupact.log 文件的内容并查找错误。根据发现的错误,您可能需要采取以下操作来修复它。
Windows 上出现此 Sysprep 错误的最常见原因是:
在系统操作系统驱动器上启用 BitLocker 加密;
您安装的其他 Windows 应用商店 (UWP) 应用程序;
您删除了一些内置的 Microsoft Store 应用程序;
您使用的 Windows 实例已从之前版本的操作系统升级(例如,从 Windows 10 升级到 Windows 11);
等待 Windows 更新安装。
Turn BitLocker Off to Run Sysprep
检查 setupact.log 日志中是否有与 BitLocker 相关的错误:
错误 SYSPRP BitLocker-Sysprep:操作系统卷的 BitLocker 已启用。关闭 BitLocker 以运行 Sysprep。 (0x80310039)
错误 [0x0f0082] SYSPRP ActionPlatform::LaunchModule:从 C:WindowsSystem32BdeSysprep.dll 执行“ValidateBitLockerState”时发生故障
以管理员身份打开命令提示符并运行命令:
manage-bde -status
它应该返回以下信息:
Disk volumes that can be protected with BitLocker Drive Encryption: Volume C: [OSDisk] Conversion Status: Encryption in Progress
此错误主要发生在支持 InstantGo 加密(基于 BitLocker)的 Windows 10/11 平板电脑和笔记本电脑上。要修复此错误,您必须使用以下 PowerShell 命令禁用 Windows 系统卷的加密:
Disable-Bitlocker –MountPoint ‘C:’
等待磁盘解密。运行命令:
manage-bde -status
磁盘状态应更改为:
Conversion Status: Fully Decrypted Protection Status: Protection Off
此后,您将能够再次运行 Sysprep 命令。
SYSPREP 无法删除用户的应用程序
检查setupact.log中是否有这样的错误:
错误 SYSPRP 软件包 SomeAppName_1.2.3.500_x64__8we4y23f8b4ws 已为用户安装,但未为所有用户配置。此包将无法在 sysprep 映像中正常运行。
错误 SYSPRP 无法删除当前用户的应用程序:0x80073cf2。
RemoveAllApps 线程的退出代码为 0x3cf2
这意味着你已从 Microsoft Store 手动安装了第三方应用程序(UWP、APPX),或错误地卸载了特定应用程序。
尝试使用 PowerShell 命令删除此应用程序包(以管理员身份在 PowerShell 控制台中运行该命令):
Get-AppxPackage –Name *SomeAppName* | Remove-AppxPackage Remove-AppxProvisionedPackage -Online -PackageName SomeAppName_1.2.3.500_x64__8we4y23f8b4ws
如果为不同的用户帐户安装了 UWP 应用程序,则需要将其从其他用户的配置文件中删除。运行 PowerShell 命令:
Get-AppxPackage -AllUsers | ? {$_.PackageFullName -eq 'SomeAppName_1.2.3.500_x64__8we4y23f8b4ws'}
检查 PackageUserInformation 值。如果任何本地用户安装了此软件包,您可以为所有用户删除 APPX:
Remove-AppxPackage -Package 'SomeAppName_1.2.3.500_x64__8we4y23f8b4ws' –AllUsers
然后从您的 Windows 映像中删除此配置包:
Remove-AppxProvisionedPackage -Online -PackageName 'SomeAppName_1.2.3.500_x64__8we4y23f8b4ws'
重新启动计算机并尝试再次运行 Sysprep。
下次 Sysprep 可能会在另一个 Microsoft Store 应用程序中失败。按照上述方法将其删除。应删除 Microsoft Store 中的所有非内置应用程序。
删除某些内置的 Microsoft Store 应用程序也可能会阻止 Sysprep 运行。在这种情况下,setupact.log中将出现以下错误:
SYSPRP 软件包 SomeAppName_1.2.3.500_x64__8we4y23f8b4ws 已为用户安装,但未为所有用户配置。此包将无法在 sysprep 映像中正常运行。
您必须使用 PowerShell 一行重新安装所有内置 UWP 应用:
Get-AppxPackage -AllUsers| Foreach
另外,在 sysprep Windows 映像之前,请断开设备与 Internet 的连接或在审核模式下禁用自动更新。这将阻止 Microsoft Store 自动更新应用程序。您还应该删除所有本地用户配置文件,仅保留本地管理员配置文件。使用 netplwiz 管理单元删除其他用户帐户。
Sysprep 无法在升级的操作系统上运行
如果要从早期版本的 Windows(Windows 10、Windows 8.1 或 Windows 7 SP1)升级操作系统,则当您尝试运行 Sysprep 时,您应该会在 setupact.log 文件中看到错误。
错误 [0x0f0036] SYSPRP spopk.dll:: Sysprep 将无法在升级的操作系统上运行。您只能在 Windows 的自定义(全新)安装版本上运行 Sysprep。
[0x0f0082] SYSPRP ActionPlatform::LaunchModule: 从 C:WindowsSystem32spopk.dll 执行“Sysprep_Clean_Validate_Opk”时发生故障; dwRet = 0x139f
Microsoft 不建议在已从以前版本的 Windows 升级的 Windows 映像上运行 Sysprep。
Microsoft 不建议在从早期版本的 Windows 更新的 Windows 映像上运行 Sysprep。支持的方案是仅 sysprep 全新安装后获得的 Windows 映像。然而,有一种方法可以绕过这个限制:
打开注册表编辑器 (regedit.exe) 并转到以下注册表项 HKEY_LOCAL_MACHINESYSTEMSetup;
找到名为Upgrade的注册表参数并将其删除;
然后导航到 HKEY_LOCAL_MACHINESYSTEMSetupStatusSysprepStatus 项,并将 CleanupState 项的参数更改为 7。
这将导致 Sysprep 假定此 Windows 副本正在以全新安装模式安装。重新启动计算机并再次运行 Sysprep。
Sysprep 在 Windows 更新安装期间失败
新的 Windows 10 版本(1909、20H2、21H1、22H1)中出现另一个 Sysprep 错误。 Sysprep 失败并在 setupact.log 中显示以下错误:
错误 SYSPRP Sysprep_Clean_Validate_Opk:如果存在活动场景,则无法打开审核模式。小时=0x800F0975
错误 SYSPRP ActionPlatform::LaunchModule:从 C:WindowsSystem32spopk.dll 执行“Sysprep_Clean_Validate_Opk”时发生故障; dwRet = 0x975
错误 SYSPRP SysprepSession::Validate:验证来自 C:WindowsSystem32SysprepActionFilesCleanup.xml 的操作时出错; dwRet = 0x975
错误 SYSPRP RunPlatformActions:验证 Sysprep 会话操作时失败;错误 [0x0f0070] SYSPRP RunDlls:运行注册表 sysprep DLL 时发生错误,停止 sysprep 执行。 dwRet = 0x975
要解决此 Sysprep 错误,您需要通过现代设置控制面板暂停 Windows 更新(设置 > 更新和安全 > Windows 更新 > 暂停更新 7 天)。
重新启动您的设备并尝试运行 Sysprep。
在某些情况下,如上所述停止 Windows 更新不会完全清除预留存储。在这种情况下,sysprep日志中会出现错误:
错误 SYSPRP Sysprep_Clean_Validate_Opk:如果正在使用保留存储,则无法打开审核模式。更新或服务操作可能正在使用保留存储。小时=0x800F0975
要解决此问题:
打开注册表编辑器(regedit.exe);
导航到注册表项 HKLMSoftwareMicrosoftWindowsCurrentVersionReserveManager;
将ShippedWithReserves参数的值从1更改为0;
然后将ActiveScenario改为0;
并使用以下命令禁用 Windows 中的预留存储:
DISM.exe /Online /Set-ReservedStorageState /State:Disabled
领取专属 10元无门槛券
私享最新 技术干货