IRBIS NB241

@echo off

title Rev:10.1.0.0

rem This script is called by x:WindowsSystem32Startnet.cmd – WinPE

rem *******************************************************************

rem FLASH_BIOS=1 Auto flash BIOS

rem FLASH_BIOS=0 Do not auto flash BIOS

rem *******************************************************************

set FLASH_BIOS=0

rem *******************************************************************

set PPKG_FILE=1

set SPP_FILE=1

set SINGLE_OS=0

set SINGLE_INSTANCE=1

rem *******************************************************************

@echo.

@echo Running Intel Optimization powercfg for improved imaging times

@echo.

@echo call powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

call powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

@echo.

if “%1″==”PXE” (

set WinPESource=y:

) else (

set WinPESource=%WinPESource%

)

@echo.

set SCRIPTS_PATH=%WinPESource%Scripts

set IMAGES_PATH=%WinPESource%Images

@echo.

rem *****************************************************************

rem List all the disks, then search the volumes of each one to see

rem which disks may have “Winpe” in the label. We will ignore that

rem disk and use the first disk without the Winpe label that we find.

rem *****************************************************************

@echo.>x:listdisk.txt

@echo list disk>>x:listdisk.txt

@echo exit>>x:listdisk.txt

echo x:listdisk.txt

@echo call diskpart /s x:listdisk.txt

call diskpart /s x:listdisk.txt>x:Disks.txt

if %ERRORLEVEL% NEQ 0 echo Diskpart error && goto :Error

rem Set Disk equal to blank to start

@echo.

rem

rem This line will write a diskpart script to select the disk and detail it’s contents.

rem We use this output to find a disk that does NOT have Winpe as the volume label.

rem That disk will have the OS installed to it. This way you can exclude USB from diskpart.

rem

rem This works around the issue where the USB key is sometimes enumerated as disk 0 and the

rem SSD is disk 1.

rem

@echo Select Disk which eMMC

call :SelectDisk

if “%Disk%”==”” echo eMMC not found && goto :ERROR

@echo.

@echo *****************************************************************

@echo Checkup SingleOS or DualOS or whether exist windows partiton

@echo *****************************************************************

rem create diskpart script for search windows partitions from emmc disk

@echo.>x:ListPar.txt

@echo select disk %Disk% >>x:ListPar.txt

@echo list partition >>x:ListPar.txt

@echo exit >>x:ListPar.txt

@echo.

rem run diskpart script

diskpart /s x:ListPar.txt >x:eMMCPar.txt

if %ERRORLEVEL% NEQ 0 echo Diskpart error && goto :Error

@echo.

rem SingleOS / DualOS switch

find “Partition 10” x:eMMCPar.txt >nul

if %ERRORLEVEL% NEQ 0 set OS=SingleOS&& goto :P artition

@echo Lis Vol>x:FindVol.txt

diskpart /s x:FindVol.txt>x:VolumeList.txt

rem set android volume hide

@echo. >x:HideVol.txt

@echo select disk %Disk%>>x:HideVol.txt

for /f “tokens=2,5” %%i in (‘type x:VolumeList.txt ^| find “RAW”‘) do (

if “%%j”==”Partition” (

@echo Select Volume %%i >>x:HideVol.txt

@echo attributes volume set hidden >>x:HideVol.txt

)

)

@echo call diskpart /s x:HideVol.txt

call diskpart /s x:HideVol.txt

rem ensure it’s DualOS,and check whether exist windows partition,if not:create the new windows partition

rem rem find “Partition 16” x:eMMCPar.txt >nul

rem rem if %ERRORLEVEL% NEQ 0 set OS=DualOS&& goto :P artition

@echo. >x:WinPar.txt

@echo. >x:DelPar.txt

@echo select disk %Disk%>>x:WinPar.txt

@echo select disk %Disk%>>x:DelPar.txt

for /f “skip=1 tokens=2” %%i in (‘type x:eMMCPar.txt ^| find “Partition”‘) do (

@echo select disk %Disk%>x:WinPar.txt

@echo select Partition %%i>>x:WinPar.txt

@echo detail partition >>x:WinPar.txt

@echo exit >>x:WinPar.txt

diskpart /s x:WinPar.txt>x:ParPro.txt

if %ERRORLEVEL% NEQ 0 echo Diskpart error && goto :Error

for /f %%j in (‘type x:ParPro.txt ^| find /c “de94bba4-06d1-4d40-a16a-bfd50179d6ac”‘) do (

if “%%j”==”1” echo select disk %Disk%>x:DelPar.txt

if “%%j”==”1” echo select partition %%i

if “%%j”==”1” echo select partition %%i >>x:DelPar.txt

if “%%j”==”1” echo delete Partition override >>x:DelPar.txt

if “%%j”==”1” echo exit >>x:DelPar.txt

if “%%j”==”1” diskpart /s x:DelPar.txt

)

for /f %%j in (‘type x:ParPro.txt ^| find /c “ebd0a0a2-b9e5-4433-87c0-68b6b72699c7″‘) do (

if “%%j”==”1” (

for /f %%k in (‘type x:ParPro.txt ^| find /c “RAW”‘) do (

if “%%k”==”0” echo select disk %Disk%>x:DelPar.txt

if “%%k”==”0” echo select partition %%i

if “%%k”==”0” echo select partition %%i >>x:DelPar.txt

if “%%k”==”0” echo delete Partition override >>x:DelPar.txt

if “%%k”==”0” echo exit >>x:DelPar.txt

if “%%k”==”0” diskpart /s x:DelPar.txt

)

)

)

for /f %%j in (‘type x:ParPro.txt ^| find /c “e3c9e316-0b5c-4db8-817d-f92df00215ae”‘) do (

if “%%j”==”1” echo select disk %Disk%>x:DelPar.txt

if “%%j”==”1” echo select partition %%i

if “%%j”==”1” echo select partition %%i >>x:DelPar.txt

if “%%j”==”1” echo delete Partition override >>x:DelPar.txt

if “%%j”==”1” echo exit >>x:DelPar.txt

if “%%j”==”1” diskpart /s x:DelPar.txt

)

)

set OS=DualOS&& goto :P artition

:P artition

@echo *****************************************************************

@echo Map drive letter for Install.wim

@echo *****************************************************************

set InstallPath=%IMAGES_PATH%&& echo “Found images folder at USB drive”

@echo.

rem Check InstallPath was found and there are images in it.

@echo.

setlocal enabledelayedexpansion

cd /d %InstallPath%

set num=””

for /f “delims=” %%i in (‘dir /a-d /b *.wim’) do (

set /a num+=1

if “!num!” == “!num!” (

set WIM_NAME!num!=%%~ni

set WIM_SIZE_NAME!num!=%%~zi

)

)

if NOT “%WIM_NAME3%”==”” echo Can not select *.WIM && goto :Error

setlocal enabledelayedexpansion

cd /d %InstallPath%

set num=””

for /f “delims=” %%i in (‘dir /a-d /b /on *.swm’) do (

set /a num+=1

if “!num!” == “!num!” (

set SWM_NAME!num!=%%~ni

set SWM_NUM=!num!

)

)

if NOT “%SWM_NUM%”==”” (

echo Found *.swm at images path

set TARGET_WIM=%SWM_NAME1%

set RE_WIM=%WIM_NAME2%

set RE_WIM_SIZE=%WIM_SIZE_NAME2%

if /i “%RE_WIM%”==”Winre” (

set RE_WIM=%WIM_NAME1%

set RE_WIM_SIZE=%WIM_SIZE_NAME1%

)

)

if “%SWM_NUM%”==”” (

echo Found *.wim at images path

if /i “%WIM_NAME1%”==”Winre” (

set TARGET_WIM=%WIM_NAME2%

set RE_WIM=%WIM_NAME1%

set RE_WIM_SIZE=%WIM_SIZE_NAME1%

)

if /i “%WIM_NAME2%”==”Winre” (

set TARGET_WIM=%WIM_NAME1%

set RE_WIM=%WIM_NAME2%

set RE_WIM_SIZE=%WIM_SIZE_NAME2%

)

)

@echo %TARGET_WIM%

if “%TARGET_WIM%”==”” echo The windows image name not specified && goto :Error

@echo.

set /a RE_WIM_SIZE=%RE_WIM_SIZE:~0,-6%

if %RE_WIM_SIZE% LSS 430 set /a RECOVERY_SIZE=480

if %RE_WIM_SIZE% GEQ 430 (

if %RE_WIM_SIZE% LSS 680 (

set /a RECOVERY_SIZE=%RE_WIM_SIZE%+320

) else (

set /a RECOVERY_SIZE=%RE_WIM_SIZE%+1024

)

)

if “%SINGLE_OS%”==”1” set OS=SingleOS

@echo.

@echo *****************************************************************

@echo Write the diskpart script now that we know what disk to use

@echo *****************************************************************

:: SingleOS

if “%OS%”==”SingleOS” (

@echo call :P arSingleOS

call :P arSingleOS

)

:: DualOS

if “%OS%”==”DualOS” (

@echo call :P arDualOS

call :P arDualOS

)

@echo Winpart.txt now contains…..

type x:winpart.txt

@echo.

@echo *****************************************************************

@echo Setting up the partition table

@echo *****************************************************************

@echo call diskpart /s x:winpart.txt

diskpart /s x:winpart.txt

if %ERRORLEVEL% NEQ 0 echo Diskpart error && goto :Error

@echo.

@echo Making directories…

md w:recyclerscratch

if %ERRORLEVEL% NEQ 0 echo “Failed to make w:recyclerscratch directory” && goto :error

@echo.

md r:recoverywindowsre

if %ERRORLEVEL% NEQ 0 echo “Failed to make r:recoverywindowsre directory” && goto :error

@echo.

@echo *****************************************************************

@echo Applying the Windows image from the USB

@echo *****************************************************************

if “%SWM_NUM%”==”” (

:: DeployWIM

@echo call :D eployOS wim /compact /EA

call :D eployOS wim /compact /EA

) else (

:: DeploySWM

@echo call :D eployOS swm /Compact /EA

call :D eployOS swm /Compact /EA

)

goto :SetWinRE

:SetWinRE

@echo.

@echo *****************************************************************

@echo Move WinRE to Recovery Partition

@echo *****************************************************************

@echo.

@echo Modifying attributes of winre.wim so we can move it.

attrib w:WindowsSystem32recoverywinre.wim -s -h -a -r

@echo if EXIST w:WindowsSystem32recoverywinre.wim move w:WindowsSystem32recoverywinre.wim r:recoverywindowsre

if EXIST w:WindowsSystem32recoverywinre.wim move w:WindowsSystem32recoverywinre.wim r:recoverywindowsre

if %ERRORLEVEL% NEQ 0 echo “Failed to move winre.wim to r:recoverywindowsre” && goto :error

@echo.

@echo xcopy %InstallPath%WinreWinre.wim r:recoverywindowsre /y

xcopy %InstallPath%Winre.wim r:recoverywindowsre /y

if %ERRORLEVEL% NEQ 0 echo “Failed to copy winre.wim to r:recoverywindowsre” && goto :error

@echo.

@echo reset attributes now

attrib r:recoverywindowsrewinre.wim +s +h +a +r

@echo.

@echo *****************************************************************

@echo Setting the boot environment

@echo *****************************************************************

if “%OS%”==”SingleOS” (

@echo call w:WINDOWSSYSTEM32BCDBOOT w:WINDOWS /s s: /f all

call w:WINDOWSSYSTEM32BCDBOOT w:WINDOWS /s s: /f all

if %ERRORLEVEL% NEQ 0 echo “Failed to set boot information” && goto :error

)

if “%OS%”==”DualOS” (

@echo call w:WINDOWSSYSTEM32BCDBOOT w:WINDOWS

w:WINDOWSSYSTEM32BCDBOOT w:WINDOWS

if %ERRORLEVEL% NEQ 0 echo “Failed to set boot information” && goto :error

@echo call :D ualOSQ2S

call :D ualOSQ2S

)

@echo *****************************************************************

@echo Setting the recovery environment

@echo *****************************************************************

@echo w:windowssystem32reagentc /SetREImage /Path r:recoverywindowsre /target w:windows

w:windowssystem32reagentc /SetREImage /Path r:recoverywindowsre /target w:windows

if %ERRORLEVEL% NEQ 0 echo “Failed to set recovery information” && goto :error

@echo.

rmdir /s /q w:recycler

@echo.

if “%FLASH_BIOS%”==”1” goto :FLASH_BIOS

goto :END

:FLASH_BIOS

@echo.

@echo ********************************************

@echo Flashing BIOS…

@echo ********************************************

@echo.

@echo BIOS file FOUND at %InstallPath%BIOS

@echo.

if EXIST %InstallPath%BIOS*.bin xcopy /y %InstallPath%BIOS*.bin %SCRIPTS_PATH%Tools

if EXIST %InstallPath%BIOS*.rom xcopy /y %InstallPath%BIOS*.rom %SCRIPTS_PATH%Tools

for /r “%SCRIPTS_PATH%Tools” %%Z in (*.bin) do (

ren “%%Z” “%%~na.fd”

)

for /r “%SCRIPTS_PATH%Tools” %%Z in (*.rom) do (

ren “%%Z” “%%~na.fd”

)

if NOT EXIST %SCRIPTS_PATH%Tools*.fd echo “Can not find the BIOS file” && goto :error

:: Flash BIOS

if /i “%PROCESSOR_ARCHITECTURE%”==”x86” %SCRIPTS_PATH%ToolsH2OFFT-W.exe

if /i “%PROCESSOR_ARCHITECTURE%”==”amd64” %SCRIPTS_PATH%ToolsH2OFFT-Wx64.exe

del /q %SCRIPTS_PATH%Tools*.fd

if %errorlevel% NEQ 0 echo “Failed to flash BIOS” && goto :error

goto :END

:ERROR

color 4f

@echo.

@echo An error has been detected.

@echo.

@echo Input Ctrl + C to exit

pause >nul

goto :ERROR

:SelectDisk

@echo.>x:ListDisk.txt

@echo list disk >>x:ListDisk.txt

@echo exit >>x:ListDisk.txt

rem run diskpart script

diskpart /s x:ListDisk.txt >x:eMMCDisk.txt

for /f “skip=1 tokens=2” %%i in (‘type x:eMMCDisk.txt ^| find “Disk”‘) do (

@echo select disk %%i>x:DetailDisk.txt

@echo detail disk >>x:DetailDisk.txt

@echo exit >>x:DetailDisk.txt

@echo diskpart /s x:DetailDisk.txt>x:DiskInfo.txt

diskpart /s x:DetailDisk.txt>x:DiskInfo.txt

for /f “tokens=3” %%a in (‘type x:DiskInfo.txt ^| find “Type :”‘) do (

@echo Disk type :%%a

if “%%a”==”SD” set Disk=%%i && goto :EOF

)

)

set Disk=

goto :EOF

:P arSingleOS

@echo.>x:winpart.txt

@echo select disk %Disk%>>x:winpart.txt

@echo clean>>x:winpart.txt

@echo convert gpt>>x:winpart.txt

@echo create partition efi size=100>>x:winpart.txt

@echo format quick fs=fat32 label=”System”>>x:winpart.txt

@echo assign letter=”S”>>x:winpart.txt

@echo create partition msr size=128>>x:winpart.txt

@echo create partition primary>>x:winpart.txt

@echo format quick fs=ntfs label=”Windows”>>x:winpart.txt

@echo assign letter=”W”>>x:winpart.txt

@echo shrink desired=%RECOVERY_SIZE%>>x:winpart.txt

@echo create partition primary>>x:winpart.txt

@echo format quick fs=ntfs label=”Recovery”>>x:winpart.txt

@echo assign letter=”R”>>x:winpart.txt

@echo set>>x:winpart.txt

@echo gpt attributes=0×8000000000000001>>x:winpart.txt

@echo exit>>x:WinPart.txt

goto :EOF

:P arDualOS

@echo.>x:winpart.txt

@echo select disk %Disk%>>x:winpart.txt

@echo create partition msr size=128>>x:winpart.txt

@echo create partition primary>>x:winpart.txt

@echo format quick fs=ntfs label=”Windows”>>x:winpart.txt

@echo assign letter=”W”>>x:winpart.txt

@echo shrink desired=%RECOVERY_SIZE%>>x:winpart.txt

@echo create partition primary>>x:winpart.txt

@echo format quick fs=ntfs label=”Recovery”>>x:winpart.txt

@echo assign letter=”Z”>>x:winpart.txt

@echo set>>x:winpart.txt

@echo gpt attributes=0×8000000000000001>>x:winpart.txt

@echo exit>>x:WinPart.txt

goto :EOF

:D ualOSQ2S

if NOT EXIST w:RecoveryOEMBackupOEMScript.cmd echo.>w:RecoveryOEMBackupOEMScript.cmd

if NOT EXIST w:WindowsOEMScript.cmd echo.>w:WindowsOEMScript.cmd

echo if /i “%%PROCESSOR_ARCHITECTURE%%”==”x86” cmd.exe /c msiexec /passive /norestart /i %%WINDIR%%OEMInsydeQ2S_x86.msi >>w:WindowsOEMScript.cmd

echo if /i “%%PROCESSOR_ARCHITECTURE%%”==”x86” cmd.exe /c msiexec /passive /norestart /i %%WINDIR%%OEMInsydeQ2S_x86.msi >>w:RecoveryOEMBackupOEMScript.cmd

echo if /i “%%PROCESSOR_ARCHITECTURE%%”==”AMD64” cmd.exe /c msiexec /passive /norestart /i %%WINDIR%%OEMInsydeQ2S_x64.msi >>w:WindowsOEMScript.cmd

echo if /i “%%PROCESSOR_ARCHITECTURE%%”==”AMD64” cmd.exe /c msiexec /passive /norestart /i %%WINDIR%%OEMInsydeQ2S_x64.msi >>w:RecoveryOEMBackupOEMScript.cmd

echo REG ADD “HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation” /v “RealTimeIsUniversal” /t REG_DWORD /d 1 /f >>w:WindowsOEMScript.cmd

echo REG ADD “HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation” /v “RealTimeIsUniversal” /t REG_DWORD /d 1 /f >>w:RecoveryOEMBackupOEMScript.cmd

if /i “%PROCESSOR_ARCHITECTURE%”==”x86” xcopy /y /e %SCRIPTS_PATH%ToolsDualOSInsydeQ2S_x86.msi w:RecoveryOEMBackupOEM

if /i “%PROCESSOR_ARCHITECTURE%”==”x86” xcopy /y /e %SCRIPTS_PATH%ToolsDualOSInsydeQ2S_x86.msi w:WindowsOEM

if /i “%PROCESSOR_ARCHITECTURE%”==”amd64” xcopy /y /e %SCRIPTS_PATH%ToolsDualOSInsydeQ2S_x64.msi w:RecoveryOEMBackupOEM

if /i “%PROCESSOR_ARCHITECTURE%”==”amd64” xcopy /y /e %SCRIPTS_PATH%ToolsDualOSInsydeQ2S_x64.msi w:WindowsOEM

goto :EOF

:D eployOS

rem Extension Name

set EN=%1

rem Compact Switch

set CS=%2

rem EA Switch

set ES=%3

if /i “%EN%”==”swm” (

@echo call dism /apply-image /imagefile:”%InstallPath%%TARGET_WIM%.swm” /SWMFile:”%InstallPath%%TARGET_WIM%*.swm” /index:1 /applydir:w: /scratchdir:”w:recyclerSCRATCH” %CS% %ES%

call dism /apply-image /imagefile:”%InstallPath%%TARGET_WIM%.swm” /SWMFile:”%InstallPath%%TARGET_WIM%*.swm” /index:1 /applydir:w: /scratchdir:”w:recyclerSCRATCH” %CS% %ES%

if %errorlevel% NEQ 0 echo “Failed to deploy OS” && goto :error

) else (

@echo call dism /apply-image /imagefile:”%InstallPath%%TARGET_WIM%.wim” /index:1 /applydir:w: /scratchdir:”w:recyclerSCRATCH” %CS% %ES%

call dism /apply-image /imagefile:”%InstallPath%%TARGET_WIM%.wim” /index:1 /applydir:w: /scratchdir:”w:recyclerSCRATCH” %CS% %ES%

if %errorlevel% NEQ 0 echo “Failed to deploy OS” && goto :error

)

goto :EOF

:END

@echo.

@echo *****************************************************************

@echo Copy over Test tools to TEST_TOOL

@echo TEST_TOOL SHOULD BE DELETED PRIOR TO SHIPPING

@echo *****************************************************************

@echo %SCRIPTS_PATH%7za.exe x w:TEST_TOOL.zip -oW:

if EXIST %WinpeSource%TEST_TOOL.zip (

if /i “%PROCESSOR_ARCHITECTURE%”==”x86” %SCRIPTS_PATH%7za.exe x %WinpeSource%TEST_TOOL.zip -oW:

if /i “%PROCESSOR_ARCHITECTURE%”==”amd64” %SCRIPTS_PATH%7za_x64.exe x %WinpeSource%TEST_TOOL.zip -oW:

)

@echo.

@echo *****************************************************************

@echo Copying over Unattend.xml to use on factory floor if it exists

@echo *****************************************************************

@echo if EXIST %InstallPath%Unattend.xml copy %InstallPath%Unattend.xml w:WindowsPanther /y

if EXIST %InstallPath%Unattend.xml copy %InstallPath%Unattend.xml w:WindowsPanther /y

@echo *****************************************************************

@echo Copying over Unattend.xml to use on factory floor if it exists

@echo *****************************************************************

@echo if EXIST %InstallPath%LayoutModification.xml copy %InstallPath%LayoutModification.xml w:UsersDefaultAppDataLocalMicrosoftWindowsShell /y

if EXIST %InstallPath%LayoutModification.xml copy %InstallPath%LayoutModification.xml w:UsersDefaultAppDataLocalMicrosoftWindowsShell /y

if EXIST %InstallPath%DefaultLayouts.xml copy %InstallPath%DefaultLayouts.xml w:UsersDefaultAppDataLocalMicrosoftWindowsShell /y

@echo.

@echo *****************************************************************

@echo Copying over NON Scanstate Packages, if they exist.

@echo IF YOU COPY OVER SCANSTATE PPKG, THIS CAUSE IMAGE TO FAIL DURING RECOVERY

@echo *****************************************************************

@echo.

@echo if EXIST %InstallPath%*.ppkg copy %InstallPath%*.ppkg w:RecoveryCustomizations /y

if EXIST %InstallPath%*.ppkg copy %InstallPath%*.ppkg w:RecoveryCustomizations /y

@echo Apply PPKG

set PPKG_PATH=w:RecoveryCustomizations

if “%PPKG_FILE%”==”0” del /s /q %PPKG_PATH%usmt.ppkg

if “%SINGLE_INSTANCE%”==”1” (

@echo if EXIST w:RecoveryCustomizationsusmt.ppkg DISM /Apply-CustomDataImage /CustomDataImage:w:RecoveryCustomizationsusmt.ppkg /ImagePath:w: /SingleInstance

if EXIST w:RecoveryCustomizationsusmt.ppkg DISM /Apply-CustomDataImage /CustomDataImage:w:RecoveryCustomizationsusmt.ppkg /ImagePath:w: /SingleInstance

)

@echo.

@echo Apply… SPP

@echo if EXIST %InstallPath%*.spp copy %InstallPath%*.spp w:RecoveryCustomizations /y

if EXIST %InstallPath%*.spp copy %InstallPath%*.spp w:RecoveryCustomizations /y

set SPP_PATH=w:RecoveryCustomizations

if “%SPP_FILE%”==”1” (

setlocal enabledelayedexpansion

cd /d %SPP_PATH%

set num=””

for /f “delims=” %%i in (‘dir /a-d /b *.spp’) do (

set /a num+=1

if “!num!” == “!num!” (

@echo set PackagePath!num!=%%~ni

set PackagePath!num!=%%~ni

)

)

)

@echo Apply-SiloedPackage / Only support 4 SPP

if %num%==1 DISM.exe /ImagePath:w: /Apply-SiloedPackage /PackagePath:%SPP_FILE%%PackagePath1%.spp

if %num%==2 DISM.exe /ImagePath:w: /Apply-SiloedPackage /PackagePath:%SPP_FILE%%PackagePath1%.spp /PackagePath:%SPP_FILE%%PackagePath2%.spp

if %num%==3 DISM.exe /ImagePath:w: /Apply-SiloedPackage /PackagePath:%SPP_FILE%%PackagePath1%.spp /PackagePath:%SPP_FILE%%PackagePath2%.spp /PackagePath:%SPP_FILE%%PackagePath3%.spp

if %num%==4 DISM.exe /ImagePath:w: /Apply-SiloedPackage /PackagePath:%SPP_FILE%%PackagePath1%.spp /PackagePath:%SPP_FILE%%PackagePath2%.spp /PackagePath:%SPP_FILE%%PackagePath3%.spp /PackagePath:%SPP_FILE%%PackagePath4%.spp

@echo.

@echo *****************************************************************

@echo Copy over OEM

@echo *****************************************************************

xcopy %WinpeSource%OEM w:recoveryoem /s /y

rem

rem Get finish time so we can evaluate total WinPE phase time.

rem

call |time>x:StopTime.txt

rem

rem Now parse both files to display the Start and Finish Time

rem

@echo === Continue the reboot.===

@echo

@echo ********************

popd

pause

call |time>x:StopTime.txt

cd /d w:windowssystem32

call shutdown.exe -r -t 5

@echo.

for /f “tokens=5” %%A in (x:starttime.txt) do echo Script Start Time is %%A

for /f “tokens=5” %%A in (x:stoptime.txt) do echo Script Stop Time is %%A

@echo.

@echo *****************************************************************

@echo Image deployment COMPLETE. Type EXIT from Command

@echo Prompt to restart or turn off device.

@echo *****************************************************************

GET 1 USD FOR LINK DOWNLOAD

NOTE: contact via email [email protected] , i will sent link download for you

More from my site