Есть такая заготовка, я её постоянно использую. При желании можно разобраться как их создавать по руководствам, но скорее это избыточно.
У меня CMD который её автоматом копирует в папку Sysprep. Считаю CMD использовать удобнее, но важно запускать из папки Sysprep. В общем-то уже всё наработано и сделано как надо.
На 11-й не особо тестировал, на 10-й проблем не возникало.
Xml можно сделать совершенней при желании.
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
<settings pass="oobeSystem">
<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">
<OOBE>
<SkipMachineOOBE>true</SkipMachineOOBE>
<SkipUserOOBE>true</SkipUserOOBE>
</OOBE>
</component>
</settings>
</unattend>
@echo off
echo "%cd%"
REM echo "C:\Windows\System32\Sysprep"
REM pause
if "%cd%" == "C:\Windows\System32\Sysprep" (
call :menu2
) else (
call :menu1
)
exit /b
:Menu1
echo Sysprep:
echo 1 скопировать в папку sysprep
echo.
set act=0
set /P act="Команда=%act%: "
if %act% == 0 exit
if %act% == 1 call :SP9_COPY
echo.
if not "silent"=="%1" pause
goto Menu
exit /b
:Menu2
echo Sysprep:
echo 1 только драйвера
echo 2 сброс SID
echo 3 только дравера + файл ответов
echo 4 сброс SID + файл ответов
echo.
echo 5 Режим аудита
set act=0
set /P act="Команда=%act%: "
if %act% == 0 exit
if %act% == 1 call :SP1_DRV
if %act% == 2 call :SP2_SID
if %act% == 3 call :SP3_DRV_QU
if %act% == 4 call :SP4_SID_QU
if %act% == 5 call :SP5_AUDIT
REM if %act% == (
REM call :
REM )
echo.
if not "silent"=="%1" pause
goto Menu
exit /b
REM ---------------- end main ----------------
:SP9_COPY
copy RunSysprep.cmd C:\Windows\System32\Sysprep
copy unattend.xml C:\Windows\System32\Sysprep
start "" C:\Windows\System32\Sysprep
cls
cd /d "C:\Windows\System32\Sysprep"
call "C:\Windows\System32\Sysprep\RunSysprep.cmd"
exit /b
:SP1_DRV
sysprep /oobe /shutdown
exit /b
:SP2_SID
sysprep /oobe /generalize /shutdown
exit /b
:SP3_DRV_QU
sysprep /oobe /unattend:"%cd%\unattend.xml" /shutdown
exit /b
:SP4_SID_QU
sysprep /oobe /generalize /unattend:"%cd%\unattend.xml" /shutdown
exit /b
:SP5_AUDIT
sysprep /audit /reboot
exit /b
pause
Примечание: Бывает что CMD сам себя может не скопировать, тогда просто удалите код копирования и вложите "вручную".