我尝试在 Windows 8.1 中执行 sysprep。我已创建 unattend.xml
<settings pass="oobeSystem">
<component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<InputLocale>en-US</InputLocale>
<SystemLocale>en-US</SystemLocale>
<UILanguage>en-US</UILanguage>
<UILanguageFallback>en-US</UILanguageFallback>
<UserLocale>en-US</UserLocale>
</component>
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<OEMInformation>
<Manufacturer>XYZ</Manufacturer>
<SupportURL>http://www.XYZ.com</SupportURL>
</OEMInformation>
<OOBE>
<HideEULAPage>true</HideEULAPage>
<NetworkLocation>Work</NetworkLocation>
<ProtectYourPC>1</ProtectYourPC>
</OOBE>
<UserAccounts>
<AdministratorPassword>
<Value>XXXXXXXXX</Value>
<PlainText>false</PlainText>
</AdministratorPassword>
<LocalAccounts>
<LocalAccount wcm:action="add">
<Password>
<Value>XXXXXXX</Value>
<PlainText>false</PlainText>
</Password>
<Description>Admin</Description>
<DisplayName>Admin</DisplayName>
<Group>Administrators</Group>
<Name>Admin</Name>
</LocalAccount>
</LocalAccounts>
</UserAccounts>
<WindowsFeatures>
<ShowWindowsMediaPlayer>false</ShowWindowsMediaPlayer>
<ShowMediaCenter>false</ShowMediaCenter>
</WindowsFeatures>
<RegisteredOrganization>XXXXXXXXXXXXXXXXXXXXX</RegisteredOrganization>
<RegisteredOwner>XXXXXXXXXXXXXXXXXXXXXXX</RegisteredOwner>
<TimeZone>Central European Standard Time</TimeZone>
<ShowWindowsLive>false</ShowWindowsLive>
</component>
</settings>
<settings pass="specialize">
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<RegisteredOrganization>XXXXXXXXXXXXXXXXXXXXXXXXX</RegisteredOrganization>
<RegisteredOwner>XXXXXXXXXXXXXXXXXXXXXXXXXX</RegisteredOwner>
<ProductKey>XXXXXXXXXXXXXXXXXXXXXXXXXXXXX</ProductKey>
</component>
</settings>
然后我跑
sysprep.exe /oobe /generalize /shutdown
我看到这个错误:
尝试对机器进行系统准备时发生致命错误
这是 setuperr.log 的输出
2013-11-13 15:59:08,错误 [0x0f0073] SYSPRP RunExternalDlls:未运行 DLL;计算机处于无效状态,或者我们无法更新记录的状态,dwRet = 0x1f
2013-11-13 15:59:08,错误 [0x0f00ae] SYSPRP WinMain:处理 sysprep 清理外部提供程序时失败;hr = 0x8007001f
2013-11-13 16:02:46,错误 SYSPRP 程序包 Microsoft.WinJS.2.0.Preview_1.0.9431.0_neutral__8wekyb3d8bbwe 已为用户安装,但未为所有用户配置。此程序包将无法
在 sysprep 映像中正常运行。
2013-11-13 16:02:46,错误 SYSPRP 无法为当前用户删除应用程序:0x80073cf2。2013-11-13
16:02:46,错误 SYSPRP RemoveAllApps 线程的退出代码为 0x3cf2。2013-11-13
16:02:46,错误 [0x0f0082] SYSPRP ActionPlatform::LaunchModule:从 C:\Windows\System32\AppxSysprep.dll 执行“SysprepGeneralize”时发生故障;dwRet = 0x3cf2
2013-11-13 16:02:46,错误 SYSPRP ActionPlatform::ExecuteAction:执行操作时出错; dwRet = 0x3cf2
2013-11-13 16:02:46,错误 SYSPRP ActionPlatform::ExecuteActionList:执行操作时出错;dwRet = 0x3cf2
2013-11-13 16:02:46,错误 SYSPRP SysprepSession::Execute:从 C:\Windows\System32\Sysprep\ActionFiles\Generalize.xml 执行操作时出错;dwRet = 0x3cf2
2013-11-13 16:02:46,错误 SYSPRP RunPlatformActions:执行 SysprepSession 操作时失败; dwRet = 0x3cf2
2013-11-13 16:02:46,错误 [0x0f0070] SYSPRP RunExternalDlls:运行注册表 sysprep DLL 时发生错误,暂停 sysprep 执行。dwRet = 0x3cf2
2013-11-13 16:02:46,错误 [0x0f00a8] SYSPRP WinMain:处理 sysprep 通用内部提供程序时失败;hr = 0x80073cf2
2013-11-13 16:19:24,错误 [0x0f0073] SYSPRP RunExternalDlls:未运行 DLL;要么机器处于无效状态,要么我们无法更新记录的状态,dwRet = 0x1f
2013-11-13 16:19:24,错误 [0x0f00ae] SYSPRP WinMain:处理 sysprep 清理外部提供程序时失败;hr = 0x8007001f
2013-11-13 16:22:01,错误 [0x0f0073] SYSPRP RunExternalDlls:未运行 DLL;要么机器处于无效状态,要么我们无法更新记录的状态,dwRet = 0x1f
2013-11-13 16:22:01,错误 [0x0f00ae] SYSPRP WinMain:处理 sysprep 清理外部提供程序时失败; hr = 0x8007001f
2013-11-13 16:24:41,错误 [0x0f00a4] SYSPRP WinMain:无法解析 sysprep 的命令行参数;GLE = 0x0
2013-11-13 16:25:15,错误 [0x0f0073] SYSPRP RunExternalDlls:未运行 DLL;计算机处于无效状态或我们无法更新记录的状态,dwRet = 0x1f
2013-11-13 16:25:15,错误 [0x0f00ae] SYSPRP WinMain:处理 sysprep 清理外部提供程序时失败;hr = 0x8007001f
2013-11-13 16:26:35,错误 [0x0f0073] SYSPRP RunExternalDlls:未运行 DLL;计算机处于无效状态,或者我们无法更新记录的状态,dwRet = 0x1f
2013-11-13 16:26:35,错误 SYSPRP WinMain:处理 sysprep 重新专门化内部提供程序时发生故障;hr = 0x8007001f
答案1
你用过Windows 系统映像管理器(WSIM)来创建无人值守文件?您发布的内容不完整。您缺少顶部的两行,如下所示:
<?xml version=”1.0” encoding=”utf-8”?>
<unattend xmlns-“urn:schemas-microsoft-com:unattend”>
结尾:
</unattend>
当您使用 WSIM 工具创建无人值守文件时,它会自动为您添加这些内容。WSIM 是Windows 评估和部署工具包(WADK)适用于 Windows 7 或 8/8.1。WSIM 还会查看映像中的可用设置,以便您只能添加适合该映像的设置,并且它具有内置验证功能,可帮助解决错误和弃用设置。
希望这可以帮助,