Я понял это сам. Я добавлю несколько ключевых подсказок, чтобы облегчить поиск других.
Файл setupact.log покажет что-то вроде этого:
Ошибка SYSPRP пакета Microsoft.Internal.Средства массовой информации.PlayReadyClient_2.3.1678.1_x64__8wekyb3d8bbwe был установлен для пользователя, но не предоставлен для всех пользователей. Этот пакет не будет работать должным образом в образе sysprep.
А если вы хотите удалить приложения Windows 8 через PowerShell, он скажет, что приложения установлены неизвестным пользователем, который называется S-1-5-21-XXXX
. И когда вы выполняете Remove-AppxPackage
в powershell, он говорит
Поскольку у текущего пользователя не установлен этот пакет
Насколько я знаю, Remove-AppxPackage может удалять только приложения, принадлежащие пользователю, который вы вошли в систему. Я не знаю, почему в моей ОС есть неизвестный пользователь, но вот мое решение.
- Удалите все файлы в
C:\Program Files\WindowsApps
(необходимо изменить владельца и права доступа к этой папке, щелкнув по ней правой кнопкой мыши)
- Удалите все файлы в
C:\ProgramData\Microsoft\Windows\AppRepository
(необходимо также изменить владельца).
Теперь, когда вы Get-AppxPackage -allusers
, он ничего не показывает. Теперь вы можете запустить sysprep.exe, и он будет работать хорошо (не забудьте изменить HKLM\SYSTEM\Setup\Status\Sysprep\SysprepStatus на 7).