[REQ] $OEM$ Folder w/Scripts for Auto-activation / OEM Branding with User Choice

Discussion in 'Scripting' started by Mr.X, Nov 21, 2014.

  1. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    Hey bumpy :D. Need a moment to install Teamviewer in a VM. Than i will bump you ... ya know :cool2:.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  2. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    For the Protocol: Challenge: 1 Me: 2 :D.

    Correct me if wrong but for Home Premium on UEFI machine that should come as near to a Gotcha! as even possible .... :g::

    http://forums.mydigitallife.net/attachment.php?attachmentid=32369&stc=1
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  3. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    #83 s1ave77, Nov 29, 2014
    Last edited by a moderator: Apr 20, 2017
    OK, after testing on Pro and HP on GPT and Pro on MBR, it seems it's easier than expected.

    Fortunately we can ask WMIC for help instead of slightly short-mouthed DISKPART ... YAY :flowers:.

    Code:
    wmic partition where (BootPartition='True' and DiskIndex='0') get Type
    will answer 'GPT: Disklabel' for (apparently) GPT systems and 'Installable File System' for MBR ones. Very kind, i like that.

    It only needs to change the Partition check at the beginning to:

    Code:
    ::===============================================================================================================
    ::CHECK PARTITION LAYOUT
    for /f "skip=1 tokens=1 delims=: " %%a in ('"wmic partition where (BootPartition='True' and DiskIndex='0') get Type"') do (
    set checklayout=%%a
    if !checklayout! equ GPT set "layout=GPT"
    if !checklayout! equ Installable set "layout=MBR"
    )
    
    And the if-checks in :Choice2 to:

    Code:
    :Choice2
    if "%layout%"=="MBR" if "%edition%"=="Enterprise" goto :KMSInstall
    if "%layout%"=="MBR" if "%edition%"=="Professional" goto :ActivationChoice
    if "%layout%"=="GPT" if "%edition%"=="Enterprise" goto :KMSInstall
    if "%layout%"=="GPT" if "%edition%"=="Professional" goto :ActivationChoice
    if "%layout%"=="GPT" if not "%edition%"=="Enterprise" goto :MessageBox
    if "%layout%"=="GPT" if not "%edition%"=="Professional" goto :MessageBox
    goto :LoaderChoice
    

    For convenience the whole thing:

    Code:
    @echo off
    setlocal ENABLEDELAYEDEXPANSION
    pushd "%~dp0"
    cd %~dp0
    ::===============================================================================================================
    ::===============================================================================================================
    ::SET SYSTEM VARIABLES
    for /f "tokens=2* delims= " %%a in ('reg query "HKLM\System\CurrentControlSet\Control\Session Manager\Environment" /v "PROCESSOR_ARCHITECTURE"') do (
    if "%%b" == "AMD64" set vera=x64
    if "%%b" == "x86" set vera=x86
    )
    FOR /F "tokens=3* delims= " %%I IN ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" ^| findstr EditionID') DO (SET edition=%%I)
    ::===============================================================================================================
    ::CHECK PARTITION LAYOUT
    for /f "skip=1 tokens=1 delims=: " %%a in ('"wmic partition where (BootPartition='True' and DiskIndex='0') get Type"') do (
    set checklayout=%%a
    if !checklayout! equ GPT set "layout=GPT"
    if !checklayout! equ Installable set "layout=MBR"
    )
    ::===============================================================================================================
    ::===============================================================================================================
    ::OEM BRANDING
    :Choice1
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Run OEM Branding ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :OEMBranding
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Choice2
    :OEMBranding
    cls
    echo --------------------------------------------------------------------------------
    echo OEM BRANDING
    echo --------------------------------------------------------------------------------
    echo:
    :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    :: 'OOBE.cmd' -> 'Windows 10' • 'Windows 8.x' • 'Windows 7' • 'Windows Vista' : Nov 18|2014 :
    :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    SET EDITION=&SET CSNAME=&SET CSVENDOR=&SET SYSMODEL=&SET SYSMNF=&SET BASEPRO=&SET BASEMNF=&SET BIOVER=&SET MAN=DEFAULT&SET MAN2=&SET PIDKEY=&SET REALMAN=&SET WINVER=&SET INFO=INFO&SET LAST=LAST&SET INL=IF NOT ERRORLEVEL 1&SET RESLN=&SET SLIC=SLIC
    SET OEMS=%windir%\Setup\scripts\oemscan.ini&SET RQR1=REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "ProductName"&SET RQR2=REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "EditionId"
    :OS
    ::check • set 'Windows OS' -> '10|8.x|7|Vista' ('findstr' -> word start|end '\<','\>')
    %RQR1% | findstr /I "\<WINDOWS\>" | findstr /I "\<PREVIEW\>" >nul&&%INL% SET WINVER=10&goto :BIOS
    %RQR1% | findstr /I "\<WINDOWS\>" | findstr /I "\<10\>" >nul&&%INL% SET WINVER=10&goto :BIOS
    %RQR1% | findstr /I "\<WINDOWS\>" | findstr /I "\<8\>" >nul&&%INL% SET WINVER=8&goto :BIOS
    %RQR1% | findstr /I "\<WINDOWS\>" | findstr /I "\<7\>" >nul&&%INL% SET WINVER=7&goto :EDITION
    %RQR1% | findstr /I "\<WINDOWS\>" | findstr /I "\<VISTA\>" >nul&&%INL% SET WINVER=VISTA&goto :EDITION
    :EDITION
    ::check • set 'Windows Edition' -> 'ULTIMATE|BUSINESS|PROFESSIONAL|HOMEPREMIUM|HOMEBASIC|STARTER' ('findstr' -> word start|end '\<','\>')
    %RQR2% | findstr /I "\<ULTIMATE\>" >nul&&%INL% SET EDITION=ULTIMATE&goto :BIOS
    %RQR2% | findstr /I "\<BUSINESS\>" >nul&&%INL% SET EDITION=BUSINESS&goto :BIOS
    %RQR2% | findstr /I "\<PROFESSIONAL\>" >nul&&%INL% SET EDITION=PROFESSIONAL&goto :BIOS
    %RQR2% | findstr /I "\<HOMEPREMIUM\>" >nul&&%INL% SET EDITION=HOMEPREMIUM&goto :BIOS
    %RQR2% | findstr /I "\<HOMEBASIC\>" >nul&&%INL% SET EDITION=HOMEBASIC&goto :BIOS
    %RQR2% | findstr /I "\<STARTER\>" >nul&&%INL% SET EDITION=STARTER&goto :BIOS
    :BIOS
    ::check • set 'Manufacturer Name' from 'CSPRODUCT|COMPUTERSYSTEM|BASEBOARD|BIOS' ID's -> filter 'results' via oemscan.ini
    for /f "tokens=2 delims==" %%A in ('"WMIC CSPRODUCT GET NAME /format:list"') do %INL% (set CSNAME=%%A)
    for /f "tokens=2 delims==" %%A in ('"WMIC CSPRODUCT GET VENDOR /format:list"') do %INL% (set CSVENDOR=%%A)
    for /f "tokens=2 delims==" %%A in ('"WMIC COMPUTERSYSTEM GET MODEL /format:list"') do %INL% (set SYSMODEL=%%A)
    for /f "tokens=2 delims==" %%A in ('"WMIC COMPUTERSYSTEM GET MANUFACTURER /format:list"') do %INL% (set SYSMNF=%%A)
    for /f "tokens=2 delims==" %%A in ('"WMIC BASEBOARD GET PRODUCT /format:list"') do %INL% (set BASEPRO=%%A)
    for /f "tokens=2 delims==" %%A in ('"WMIC BASEBOARD GET MANUFACTURER /format:list"') do %INL% (set BASEMNF=%%A)
    for /f "tokens=2 delims== " %%A in ('"WMIC BIOS GET VERSION /format:list"') do %INL% (set BIOVER=%%A)
    :FILTER
    ::check • filter 'results' ('findstr' specific list order -> word start|end '\<','\>') -> by-pass 'void|conflict' entries
    SET VOID1=To Be Filled By O.E.M.&SET VOID2=System Product Name&SET VOID3=System manufacturer&SET VOID4=Base Board Product Name&SET VOID5=Intel Corporation
    :CHECK1
    IF DEFINED VOID1 IF /I "%CSNAME%"=="%VOID1%" (goto :CHECK2) else IF DEFINED VOID2 IF /I "%CSNAME%"=="%VOID2%" (goto :CHECK2) else IF DEFINED VOID3 IF /I "%CSNAME%"=="%VOID3%" (goto :CHECK2) else IF DEFINED VOID4 IF /I "%CSNAME%"=="%VOID4%" (goto :CHECK2) else IF DEFINED VOID5 IF /I "%CSNAME%"=="%VOID5%" (goto :CHECK2)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%CSNAME%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECK2
    IF DEFINED VOID1 IF /I "%SYSMODEL%"=="%VOID1%" (goto :CHECK3) else IF DEFINED VOID2 IF /I "%SYSMODEL%"=="%VOID2%" (goto :CHECK3) else IF DEFINED VOID3 IF /I "%SYSMODEL%"=="%VOID3%" (goto :CHECK3) else IF DEFINED VOID4 IF /I "%SYSMODEL%"=="%VOID4%" (goto :CHECK3) else IF DEFINED VOID5 IF /I "%SYSMODEL%"=="%VOID5%" (goto :CHECK3)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%SYSMODEL%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECK3
    IF DEFINED VOID1 IF /I "%BASEPRO%"=="%VOID1%" (goto :CHECK4) else IF DEFINED VOID2 IF /I "%BASEPRO%"=="%VOID2%" (goto :CHECK4) else IF DEFINED VOID3 IF /I "%BASEPRO%"=="%VOID3%" (goto :CHECK4) else IF DEFINED VOID4 IF /I "%BASEPRO%"=="%VOID4%" (goto :CHECK4) else IF DEFINED VOID5 IF /I "%BASEPRO%"=="%VOID5%" (goto :CHECK4)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%BASEPRO%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECK4
    IF DEFINED VOID1 IF /I "%CSVENDOR%"=="%VOID1%" (goto :CHECK5) else IF DEFINED VOID2 IF /I "%CSVENDOR%"=="%VOID2%" (goto :CHECK5) else IF DEFINED VOID3 IF /I "%CSVENDOR%"=="%VOID3%" (goto :CHECK5) else IF DEFINED VOID4 IF /I "%CSVENDOR%"=="%VOID4%" (goto :CHECK5) else IF DEFINED VOID5 IF /I "%CSVENDOR%"=="%VOID5%" (goto :CHECK5)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%CSVENDOR%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECK5
    IF DEFINED VOID1 IF /I "%SYSMNF%"=="%VOID1%" (goto :CHECK6) else IF DEFINED VOID2 IF /I "%SYSMNF%"=="%VOID2%" (goto :CHECK6) else IF DEFINED VOID3 IF /I "%SYSMNF%"=="%VOID3%" (goto :CHECK6) else IF DEFINED VOID4 IF /I "%SYSMNF%"=="%VOID4%" (goto :CHECK6) else IF DEFINED VOID5 IF /I "%SYSMNF%"=="%VOID5%" (goto :CHECK6)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%SYSMNF%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECK6
    IF DEFINED VOID1 IF /I "%BIOVER%"=="%VOID1%" (goto :CHECKOUT) else IF DEFINED VOID2 IF /I "%BIOVER%"=="%VOID2%" (goto :CHECKOUT) else IF DEFINED VOID3 IF /I "%BIOVER%"=="%VOID3%" (goto :CHECKOUT) else IF DEFINED VOID4 IF /I "%BIOVER%"=="%VOID4%" (goto :CHECKOUT) else IF DEFINED VOID5 IF /I "%BIOVER%"=="%VOID5%" (goto :CHECKOUT)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%SLIC%%\>" ^| findstr /I "\<%%BIOVER%%\>"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECKOUT
    REG QUERY "HKLM\SYSTEM\ControlSet001\Control\SystemInformation" /v "SystemProductName" | findstr /I "\<VMware\>" >nul&&%INL% goto :SETKEY
    REG QUERY "HKLM\SYSTEM\ControlSet001\Control\SystemInformation" /v "SystemProductName" | findstr /I "\<VirtualBox\>" >nul&&%INL% goto :SETKEY
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%BASEMNF%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :SETKEY
    ::set 'genuine' activation -> use bios version id (if detected), bios may be modded|shared (ie.'Dell PC' - bios mod 'ACRSYS-Acer'; etc) -> ('findstr' -> word start|end '\<','\>')
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%SLIC%%\>" ^| findstr /I "\<%%BIOVER%%\>"') do (set MAN2=%%c)
    IF /I "%MAN%"=="DEFAULT" REG QUERY "HKLM\SYSTEM\ControlSet001\Control\SystemInformation" /v "SystemProductName" | findstr /I "\<VMware\>" >nul&&%INL% SET MAN=VMWARE
    IF /I "%MAN%"=="DEFAULT" REG QUERY "HKLM\SYSTEM\ControlSet001\Control\SystemInformation" /v "SystemProductName" | findstr /I "\<VirtualBox\>" >nul&&%INL% SET MAN=VBOX
    IF /I "%MAN2%"=="GATEWAY" IF /I "%MAN%"=="EMACHINES" SET MAN2=EMACHINES&goto :SERIAL
    IF /I "%MAN2%"=="ACER" IF /I "%MAN%"=="EMACHINES" SET MAN2=EMACHINES&goto :SERIAL
    IF /I "%MAN2%"=="ACER" IF /I "%MAN%"=="GATEWAY" SET MAN2=GATEWAY&goto :SERIAL
    IF /I "%MAN2%"=="ACER" IF /I "%MAN%"=="PBELL" SET MAN2=PBELL&goto :SERIAL
    IF /I "%MAN2%"=="HP" IF /I "%MAN%"=="COMPAQ" SET MAN2=COMPAQ&goto :SERIAL
    IF /I "%MAN2%"=="LENOVO" IF /I "%MAN%"=="IBM" SET MAN2=IBM&goto :SERIAL
    IF NOT DEFINED MAN2 SET MAN2=%MAN%&goto :SERIAL
    :SERIAL
    ::scan 'oemscan.ini' once with the provided 'Manufacturer|OS|Edition' -> if not matched, set the manufacturer (serial) to 'DEFAULTOEM' (Acer) & try again -> ('findstr' -> word start|end '\<','\>')
    IF /I "%WINVER%"=="10" GOTO :WIN810
    IF /I "%WINVER%"=="8" GOTO :WIN810
    IF NOT DEFINED WINVER GOTO :BRANDING
    IF NOT DEFINED EDITION GOTO :BRANDING
    IF EXIST %OEMS% for /f "tokens=1,2,3,4 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%EDITION%%\>" ^| findstr /I "\<%%MAN2%%\>"') do (echo %%a | findstr /I "\<%WINVER%\>" >nul &&%INL% set PIDKEY=%%d)
    IF NOT DEFINED PIDKEY set REALMAN=%MAN2%&set MAN2=DEFAULTOEM&goto :SERIAL
    IF /I "%MAN2%"=="DEFAULTOEM" set MAN2=%REALMAN%
    :ACTIVATION
    ::create 'activate.cmd' -> 'CALL' -> from 'OOBE.cmd' for 'WIN7' or 'SetupComplete.cmd' for 'VISTA'
    (echo @echo off & echo. & echo :ACTIVATE & echo ::apply serial:: & echo cscript //nologo %windir%\system32\slmgr.vbs -ipk %PIDKEY% ^>^nul & echo ::apply certificate ^& 2nd, 3rd, 4th, etc, if available::
    echo IF EXIST "%windir%\Setup\scripts\Certificates\%MAN2%.xrm-ms" for /f "tokens=*" %%%%A in ^('DIR /B "%windir%\Setup\scripts\Certificates\%MAN2%*.xrm-ms"'^) DO ^(
    echo cscript //nologo %windir%\system32\slmgr.vbs -ilc "%windir%\Setup\scripts\Certificates\%%%%A" ^>^nul^) & echo IF EXIST "%windir%\Setup\scripts\oemscan.ini" DEL /F /Q "%windir%\Setup\scripts\oemscan.ini" ^>^nul
    echo IF EXIST "%windir%\Setup\scripts\Certificates\" DEL /S /F /Q "%windir%\Setup\scripts\Certificates\*.*" ^>^nul ^&^& RD /S /Q "%windir%\Setup\scripts\Certificates" ^>^nul) >"%windir%\Setup\scripts\activate.cmd"
    IF /I NOT "%WINVER%"=="VISTA" GOTO :OOBE
    ::'VISTA only' check 'SetupComplete.cmd' exists -> 'NO' rename|edit 'activate.cmd' -> 'YES' -> edit existing 'SetupComplete.cmd'
    IF NOT EXIST %windir%\Setup\scripts\SetupComplete.cmd (move /Y %windir%\Setup\scripts\activate.cmd %windir%\Setup\scripts\no4.txt >nul
    (echo RD /S /Q "%windir%\Setup\scripts" ^>^nul & echo DEL /F /Q %%0%% ^>^nul) >%windir%\Setup\scripts\no3.txt 
    copy /b %windir%\Setup\scripts\no4.txt+%windir%\Setup\scripts\no3.txt %windir%\Setup\scripts\SetupComplete.cmd >nul & del /F /Q %windir%\Setup\scripts\no4.txt >nul %windir%\Setup\scripts\no3.txt >nul
    ) ELSE (Type %windir%\Setup\scripts\SetupComplete.cmd | findstr /I /V /C:"@echo off" >%windir%\Setup\scripts\no2.txt && del /F /Q %windir%\Setup\scripts\SetupComplete.cmd >nul
    (echo @echo off & echo. & echo IF EXIST %windir%\Setup\scripts\activate.cmd CALL %windir%\Setup\scripts\activate.cmd ^>^nul ^&^& DEL /F /Q %windir%\Setup\scripts\activate.cmd ^>^nul) >%windir%\Setup\scripts\no1.txt 
    copy /b %windir%\Setup\scripts\no1.txt+%windir%\Setup\scripts\no2.txt %windir%\Setup\scripts\SetupComplete.cmd >nul & del /F /Q %windir%\Setup\scripts\no1.txt >nul %windir%\Setup\scripts\no2.txt >nul)
    GOTO :BRANDING
    :WIN810
    %windir%\Setup\scripts\Rw.exe /Min /NoLogo /command="ACPI Dump MSDM";"RwExit" /logfile=%windir%\Setup\scripts\msdm.log
    for /f "Skip=1 tokens=2 delims=    " %%A in ('find "-" %windir%\Setup\scripts\msdm.log') do %INL% set DM=%%A
    cscript //B %windir%\system32\slmgr.vbs /ipk %DM% >nul
    cscript //B %windir%\system32\slmgr.vbs /ato >nul
    IF EXIST "%windir%\Setup\scripts\msdm.log" DEL /F /Q "%windir%\Setup\scripts\msdm.log" >nul
    GOTO :BRANDING
    :OOBE
    ::check • apply created 'activate.cmd' -> from this 'OOBE.cmd'
    IF EXIST %windir%\Setup\scripts\activate.cmd cd /d %windir%\Setup\scripts\ && CALL "activate.cmd" >nul
    IF EXIST %windir%\Setup\scripts\activate.cmd DEL /F /Q %windir%\Setup\scripts\activate.cmd >nul
    :BRANDING
    ::check • set 'MAN=?' -> if exist 'Force_Theme_[readme].txt' || edit brand '.reg file' -> if installing 'Starter' Edition
    IF EXIST "%windir%\Setup\scripts\Rw.exe" DEL /F /Q "%windir%\Setup\scripts\Rw.exe" >nul
    cd /d %windir%\Setup\scripts\OEM's\ && for /r %%G in (.) DO IF EXIST %%G\Force_Theme_[readme].txt DEL /F /Q %%G\Force_Theme_[readme].txt >nul &&set MAN=%%~nG
    IF EXIST "%windir%\Setup\scripts\Force_Theme_[readme].txt" DEL /F /Q "%windir%\Setup\scripts\Force_Theme_[readme].txt" >nul
    IF /I NOT "%EDITION%"=="STARTER" GOTO :CONTINUE
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\%MAN%.reg" (cd /d %windir%\Setup\scripts\OEM's\%MAN%\ >nul & Type %MAN%.reg | findstr /I /V "InstallTheme" >STARTER.reg && MOVE /Y "STARTER.reg" "%MAN%.reg" >nul)
    :CONTINUE
    ::finalize branding|theme
    IF NOT EXIST "%windir%\Setup\scripts\OEM's\%MAN%\%MAN%.reg" goto :TRANSFERS
    start /w regedit /s "%windir%\Setup\scripts\OEM's\%MAN%\%MAN%.reg" && DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\%MAN%.reg" >nul
    for /f "tokens=2* delims=     " %%A IN ('REG QUERY "HKLM\HARDWARE\DESCRIPTION\System\BIOS" /v SystemProductName') DO %INL% set SYSPDT=%%B
    IF NOT DEFINED SYSPDT (goto :TRANSFERS) else IF DEFINED VOID1 IF /I "%SYSPDT%"=="%VOID1%" (goto :TRANSFERS) else IF DEFINED VOID2 IF /I "%SYSPDT%"=="%VOID2%" (goto :TRANSFERS) else IF DEFINED VOID3 IF /I "%SYSPDT%"=="%VOID3%" (goto :TRANSFERS) else IF DEFINED VOID4 IF /I "%SYSPDT%"=="%VOID4%" (goto :TRANSFERS) else IF DEFINED VOID5 IF /I "%SYSPDT%"=="%VOID5%" (goto :TRANSFERS)
    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation" /f /v "Model" /t REG_SZ /d "%SYSPDT%" >nul
    :TRANSFERS
    ::check • screen resolution -> movements|actions
    %windir%\Setup\scripts\MultiMonitorTool.exe /HideInactiveMonitors 1 /stext %windir%\Setup\scripts\monitor.txt
    for /f "tokens=2,3 delims=,: " %%i in ('type %windir%\Setup\scripts\monitor.txt ^| find /i "Right-Bottom"') do %INL% set RESLN=%%iX%%j
    IF EXIST "%windir%\Setup\scripts\MultiMonitorTool.exe" DEL /F /Q "%windir%\Setup\scripts\MultiMonitorTool.exe" >nul
    IF EXIST "%windir%\Setup\scripts\monitor.txt" DEL /F /Q "%windir%\Setup\scripts\monitor.txt" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\%RESLN%.jpg" DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" >nul && MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\%RESLN%.jpg" "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\%RESLN%.jpg" DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" >nul && MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\%RESLN%.jpg" "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" REN "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" "BACKGROUNDDEFAULT.bak" >nul && DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\*.jpg" >nul & REN "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.bak" "BACKGROUNDDEFAULT.jpg" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" REN "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" "WALLPAPER.bak" >nul && DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\*.jpg" >nul & REN "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.bak" "WALLPAPER.jpg" >nul
    :TRANSFER1
    ::check • 'Vista' -> movements|actions
    IF /I NOT "%WINVER%"=="VISTA" goto :TRANSFER2
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\backgrounds" cd /d %windir%\Setup\scripts\OEM's\%MAN%\ && RD /S /Q "backgrounds" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" REN %windir%\Web\Wallpaper\img24.jpg img24.bak && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" "%windir%\Web\Wallpaper\img24.jpg" >nul
    :TRANSFER2
    ::check • 'Win8.x and Win 10' -> movements|actions
    IF /I "%WINVER%"=="VISTA" GOTO :TRANSFER3
    IF /I "%WINVER%"=="7" GOTO :TRANSFER3
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\USER.bmp" MD "%systemdrive%\$%MAN%$\Account" >nul && MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\USER.bmp" "%systemdrive%\$%MAN%$\Account\user.bmp" >nul
    IF EXIST "%systemdrive%\$%MAN%$\Account\user.bmp" REN "%ProgramData%\Microsoft\User Account Pictures\user.bmp" "user.bmp.bak" >nul && COPY /Y "%systemdrive%\$%MAN%$\Account\user.bmp" "%ProgramData%\Microsoft\User Account Pictures\user.bmp" >nul && COPY /Y "%ProgramData%\Microsoft\User Account Pictures\user.bmp.bak" "%systemdrive%\$%MAN%$\Account\original.bmp" >nul
    IF EXIST "%systemdrive%\$%MAN%$\Account\user.bmp" REN "%ProgramData%\Microsoft\User Account Pictures\user.png" "user.png.bak" >nul && COPY /Y "%systemdrive%\$%MAN%$\Account\user.bmp" "%ProgramData%\Microsoft\User Account Pictures\user.png" >nul
    IF EXIST "%systemdrive%\$%MAN%$\Account\user.bmp" REN "%ProgramData%\Microsoft\User Account Pictures\user-40.png" "user-40.png.bak" >nul && COPY /Y "%systemdrive%\$%MAN%$\Account\user.bmp" "%ProgramData%\Microsoft\User Account Pictures\user-40.png" >nul
    IF EXIST "%systemdrive%\$%MAN%$\Account\user.bmp" REN "%ProgramData%\Microsoft\User Account Pictures\user-200.png" "user-200.png.bak" >nul && COPY /Y "%systemdrive%\$%MAN%$\Account\user.bmp" "%ProgramData%\Microsoft\User Account Pictures\user-200.png" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\OOBE.xml" DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\OOBE.xml" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\*.theme" TAKEOWN /F "%windir%\Resources\Themes\*.theme" >nul & ICACLS "%windir%\Resources\Themes\*.theme" /reset /T /Q >nul & ICACLS "%windir%\Resources\Themes\*.theme" /grant:r "%windir%\Resources\Themes\*.theme:(OI)(CI)F" 2>nul & REN "%windir%\Resources\Themes\aero.theme"  theme3.theme >nul & MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\*.theme" "%windir%\Resources\Themes\aero.theme" >nul
    IF EXIST "%windir%\Web\Screen\img100.jpg" TAKEOWN /F "%windir%\Web\Screen\*.jpg" >nul & ICACLS "%windir%\Web\Screen\*.jpg" /reset /T /Q >nul & IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" MD "%systemdrive%\$%MAN%$\LockScreen" >nul && MOVE /Y "%windir%\Web\Screen\img100.jpg" "%systemdrive%\$%MAN%$\LockScreen\original.jpg" >nul && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" "%systemdrive%\$%MAN%$\LockScreen\LockScreen.jpg" >nul && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" "%windir%\Web\Screen\img100.jpg" >nul
    IF EXIST "%windir%\Web\Screen\img100.png" TAKEOWN /F "%windir%\Web\Screen\*.png" >nul & ICACLS "%windir%\Web\Screen\*.png" /reset /T /Q >nul & IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" MD "%systemdrive%\$%MAN%$\LockScreen" >nul && MOVE /Y "%windir%\Web\Screen\img100.png" "%systemdrive%\$%MAN%$\LockScreen\original.png" >nul && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" "%systemdrive%\$%MAN%$\LockScreen\LockScreen.jpg" >nul && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" "%windir%\Web\Screen\img100.png" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" MD "%systemdrive%\$%MAN%$\Desktop" >nul && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" "%systemdrive%\$%MAN%$\Desktop\Desktop.jpg" >nul
    IF EXIST "%systemdrive%\$%MAN%$\" MOVE /Y "%systemdrive%\$%MAN%$" "%windir%\$%MAN%$" >nul
    ::Enables f8 key for Win 8.x and Win 10 in desktops and laptops |  To disable this feature for tablets put :: in front of the line below
    bcdedit /set {default} bootmenupolicy legacy >nul
    :TRANSFER3
    ::check • 'Windows OS' -> movements|actions
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\USER.bmp" MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\USER.bmp" "%ProgramData%\Microsoft\User Account Pictures\user.bmp" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\*.theme" MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\*.theme" "%windir%\Resources\Themes\$OEM$.theme" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\*.*" MD "%windir%\system32\oobe\info" 2>nul & for /f "delims==" %%F IN ('dir "%windir%\Setup\scripts\OEM's\%MAN%\*.*" /s /b') DO MOVE /Y "%%F" "%windir%\system32\oobe\info\" 2>nul
    cd /d %windir%\Setup\scripts\
    IF EXIST "%windir%\Setup\scripts\OEM's\" DEL /S /F /Q "%windir%\Setup\scripts\OEM's\*.*" >nul && RD /S /Q "%windir%\Setup\scripts\OEM's" >nul
    IF /I "%WINVER%"=="VISTA" GOTO :CLOSE
    IF EXIST "%windir%\Setup\scripts\Certificates\" DEL /S /F /Q "%windir%\Setup\scripts\Certificates\*.*" >nul && RD /S /Q "%windir%\Setup\scripts\Certificates" >nul
    IF EXIST "%windir%\Setup\scripts\oemscan.ini" DEL /F /Q "%windir%\Setup\scripts\oemscan.ini" >nul
    ::===============================================================================================================
    ::===============================================================================================================
    ::ACTIVATION
    :Choice2
    if "%layout%"=="MBR" if "%edition%"=="Enterprise" goto :KMSInstall
    if "%layout%"=="MBR" if "%edition%"=="Professional" goto :ActivationChoice
    if "%layout%"=="GPT" if "%edition%"=="Enterprise" goto :KMSInstall
    if "%layout%"=="GPT" if "%edition%"=="Professional" goto :ActivationChoice
    if "%layout%"=="GPT" if not "%edition%"=="Enterprise" goto :MessageBox
    if "%layout%"=="GPT" if not "%edition%"=="Professional" goto :MessageBox
    goto :LoaderChoice
    :MessageBox
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "^!^!^!GPT Layout detected^!^!^! Skipping activation." 48
    IF %ERRORLEVEL% EQU 1 del /s /q %file% >nul && call :Choice3
    :ActivationChoice
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Windows Loader (Yes) or KMS (No) ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :LoaderChoice
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :KMSInstall
    :LoaderChoice
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Install Windows Loader ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :LoaderInstall
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Choice3
    ::===============================================================================================================
    ::LOADER INSTALL
    :LoaderInstall
    cls
    echo --------------------------------------------------------------------------------
    echo WINDOWS LOADER by Daz
    echo --------------------------------------------------------------------------------
    echo:
    %~dp0"Windows Loader.exe" /silent
    goto:Choice3
    ::===============================================================================================================
    ::KMS ACTIVATION
    :KMSInstall
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Install KMS Server by CODYQX4 ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :KMS
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Choice3
    :KMS
    cls
    echo --------------------------------------------------------------------------------
    echo KMS Server by CODYQX4
    echo --------------------------------------------------------------------------------
    echo:
    set port=1688
    md "%windir%\KMSServerService" >nul
    xcopy "KMS Server Service %vera%.exe" /s /q "%windir%\KMSServerService" /Y >nul
    ren "%windir%\KMSServerService\KMS Server Service %vera%.exe" KMSServerService.exe
    netsh advfirewall firewall add rule name="KMSServerService %port%" dir=in  program="%windir%\KMSServerService\KMSServerService.exe" localport=%port% protocol=TCP action=allow remoteip=any
    netsh advfirewall firewall add rule name="KMSServerService %port%" dir=in  program="%windir%\KMSServerService\KMSServerService.exe" localport=%port% protocol=TCP action=allow remoteip=localsubnet
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer /v Description /t REG_SZ /d "Windows Service that emulates a Key Management Service (KMS) Server" /f >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "KMSPort" /d %port% /t "REG_SZ" >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "KMSPID" /d "RandomKMSPID" /t "REG_SZ" >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "KMSHWID" /d "364F463A8863D35F" /t "REG_SZ" >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "VLActivationInterval" /d "120" /t "REG_DWORD" >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "VLRenewalInterval" /d "10080" /t "REG_DWORD" >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "KillProcessOnPort" /d "1" /t "REG_DWORD" >nul
    sc create KMSServerService binPath= "%windir%\KMSServerService\KMSServerService.exe" type= own error= normal obj= "NT AUTHORITY\NetworkService" start= demand DisplayName= KMSServerService
    SCHTASKS /Create /TN "Reactivate Service DAILY" /TR "%windir%\KMSServerService\reactivate.cmd" /SC DAILY /MO 1 /RU SYSTEM /RL Highest /F
    SCHTASKS /Create /TN "Reactivate Service ONLOGON" /TR "%windir%\KMSServerServicereactivate.cmd" /SC ONLOGON /RU SYSTEM /RL Highest /F
    SCHTASKS /Create /TN "Reactivate Service ONSTART" /TR "%windir%\KMSServerService\reactivate.cmd" /SC ONSTART /RU SYSTEM /RL Highest /F
    >"%windir%\KMSServerService\reactivate.cmd" (
    echo @echo off
    echo :: Code by s1ave77
    echo cls
    echo echo:
    echo sc start KMSServerService ^>nul
    if /i "%edition%"=="Enterprise" echo cscript %windir%\system32\slmgr.vbs /ipk 33PXH-7Y6KF-2VJC9-XBBR8-HVTHH
    if /i "%edition%"=="Professional" echo cscript %windir%\system32\slmgr.vbs /ipk FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4
    echo cscript %windir%\system32\slmgr.vbs /skms 127.0.0.2:%port%
    echo cscript %windir%\system32\slmgr.vbs /ato
    echo sc stop KMSServerService ^>nul
    echo exit
    )
    sc start KMSServerService
    if /i "%edition%"=="Enterprise" cscript %windir%\system32\slmgr.vbs /ipk 33PXH-7Y6KF-2VJC9-XBBR8-HVTHH
    if /i "%edition%"=="Professional" cscript %windir%\system32\slmgr.vbs /ipk FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4
    cscript %windir%\system32\slmgr.vbs /skms 127.0.0.2:%port%
    cscript %windir%\system32\slmgr.vbs /ato
    sc stop KMSServerService
    ::===============================================================================================================
    ::===============================================================================================================
    ::NET INSTALL
    :Choice3
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Install .Net Framework ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :NetInstall
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Choice4
    :NetInstall
    cls
    echo --------------------------------------------------------------------------------
    echo .NET INSTALL
    echo --------------------------------------------------------------------------------
    echo:
    "%~dp0net4install.exe" /silent
    ::===============================================================================================================
    ::===============================================================================================================
    :Choice4
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Reboot (mandatory for Loader) ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :Reboot
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Exit
    ::===============================================================================================================
    :Reboot
    ::finished -> remove 'scripts' dir ('RunOnce' Reg entry) -> self delete 'OOBE.cmd'
    (echo @echo off & echo. & echo IF EXIST "%windir%\Setup\scripts\" RD /S /Q "%windir%\Setup\scripts" ^>^nul & echo DEL /F /Q %%0%% ^>^nul) >"%windir%\Cleanup.cmd"
    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" /v !Clean /t REG_SZ /d "%windir%\Cleanup.cmd" /f >nul
    Timeout /T 8 >nul
    DEL /F /Q %0% >nul
    ENDLOCAL
    shutdown.exe /r /t 0
    ::===============================================================================================================
    :Exit
    ::finished -> remove 'scripts' dir ('RunOnce' Reg entry) -> self delete 'OOBE.cmd'
    (echo @echo off & echo. & echo IF EXIST "%windir%\Setup\scripts\" RD /S /Q "%windir%\Setup\scripts" ^>^nul & echo DEL /F /Q %%0%% ^>^nul) >"%windir%\Cleanup.cmd"
    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" /v !Clean /t REG_SZ /d "%windir%\Cleanup.cmd" /f >nul
    Timeout /T 8 >nul
    DEL /F /Q %0% >nul
    ENDLOCAL
    exit
    
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  4. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,575
    15,645
    270
    #84 Mr.X, Nov 30, 2014
    Last edited: Nov 30, 2014
    (OP)
    This last code works so far :worthy:
    Tested in VMware, GPT scheme, Ultimate x64: good.
    Tested in VMware, GPT scheme, Enterprise x64: no good.
     
  5. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    Did you try to install KMS?
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  6. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,575
    15,645
    270
    #86 Mr.X, Nov 30, 2014
    Last edited: Nov 30, 2014
    (OP)
    I did Ultimate and after clicking OK on msgbox "GPT Layout detected Skipping activation." net framework install pops up, so there's no KMS option available on that scenario as expected, no?

    Ed. I guess for Ultimate x64 GPT it's fine msgboxes behavior. Just finished Enterprise and it pops up "GPT Layout detected Skipping activation." (wrong in this case) then net framework install pop ups, no KMS activation offered (wrong), in short, same behavior as in Ultimate.
     
  7. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    #87 s1ave77, Nov 30, 2014
    Last edited by a moderator: Apr 20, 2017
    Hmm, corrected a little flaw regarding Pro on GPT, now it asks for KMSInstall :good3:.

    Also added better spelling in edition and layout check.

    So i better post the whole:

    Code:
    @echo off
    setlocal ENABLEDELAYEDEXPANSION
    pushd "%~dp0"
    cd %~dp0
    ::===============================================================================================================
    ::===============================================================================================================
    ::SET SYSTEM VARIABLES
    for /f "tokens=2* delims= " %%a in ('reg query "HKLM\System\CurrentControlSet\Control\Session Manager\Environment" /v "PROCESSOR_ARCHITECTURE"') do (
    if "%%b" == "AMD64" set vera=x64
    if "%%b" == "x86" set vera=x86
    )
    for /f "tokens=3* delims= " %%i in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" ^| findstr /i "EditionID"') do set "edition=%%i"
    ::===============================================================================================================
    ::CHECK PARTITION LAYOUT
    for /f "skip=1 tokens=1 delims=: " %%a in ('"wmic partition where (BootPartition='True' and DiskIndex='0') get Type"') do (
    set checklayout=%%a
    if "!checklayout!"=="GPT" set "layout=GPT"
    if "!checklayout!"=="Installable" set "layout=MBR"
    )
    ::===============================================================================================================
    ::===============================================================================================================
    ::OEM BRANDING
    :Choice1
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Run OEM Branding ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :OEMBranding
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Choice2
    :OEMBranding
    cls
    echo --------------------------------------------------------------------------------
    echo OEM BRANDING
    echo --------------------------------------------------------------------------------
    echo:
    :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    :: 'OOBE.cmd' -> 'Windows 10' • 'Windows 8.x' • 'Windows 7' • 'Windows Vista' : Nov 18|2014 :
    :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    SET EDITION=&SET CSNAME=&SET CSVENDOR=&SET SYSMODEL=&SET SYSMNF=&SET BASEPRO=&SET BASEMNF=&SET BIOVER=&SET MAN=DEFAULT&SET MAN2=&SET PIDKEY=&SET REALMAN=&SET WINVER=&SET INFO=INFO&SET LAST=LAST&SET INL=IF NOT ERRORLEVEL 1&SET RESLN=&SET SLIC=SLIC
    SET OEMS=%windir%\Setup\scripts\oemscan.ini&SET RQR1=REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "ProductName"&SET RQR2=REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "EditionId"
    :OS
    ::check • set 'Windows OS' -> '10|8.x|7|Vista' ('findstr' -> word start|end '\<','\>')
    %RQR1% | findstr /I "\<WINDOWS\>" | findstr /I "\<PREVIEW\>" >nul&&%INL% SET WINVER=10&goto :BIOS
    %RQR1% | findstr /I "\<WINDOWS\>" | findstr /I "\<10\>" >nul&&%INL% SET WINVER=10&goto :BIOS
    %RQR1% | findstr /I "\<WINDOWS\>" | findstr /I "\<8\>" >nul&&%INL% SET WINVER=8&goto :BIOS
    %RQR1% | findstr /I "\<WINDOWS\>" | findstr /I "\<7\>" >nul&&%INL% SET WINVER=7&goto :EDITION
    %RQR1% | findstr /I "\<WINDOWS\>" | findstr /I "\<VISTA\>" >nul&&%INL% SET WINVER=VISTA&goto :EDITION
    :EDITION
    ::check • set 'Windows Edition' -> 'ULTIMATE|BUSINESS|PROFESSIONAL|HOMEPREMIUM|HOMEBASIC|STARTER' ('findstr' -> word start|end '\<','\>')
    %RQR2% | findstr /I "\<ULTIMATE\>" >nul&&%INL% SET EDITION=ULTIMATE&goto :BIOS
    %RQR2% | findstr /I "\<BUSINESS\>" >nul&&%INL% SET EDITION=BUSINESS&goto :BIOS
    %RQR2% | findstr /I "\<PROFESSIONAL\>" >nul&&%INL% SET EDITION=PROFESSIONAL&goto :BIOS
    %RQR2% | findstr /I "\<HOMEPREMIUM\>" >nul&&%INL% SET EDITION=HOMEPREMIUM&goto :BIOS
    %RQR2% | findstr /I "\<HOMEBASIC\>" >nul&&%INL% SET EDITION=HOMEBASIC&goto :BIOS
    %RQR2% | findstr /I "\<STARTER\>" >nul&&%INL% SET EDITION=STARTER&goto :BIOS
    :BIOS
    ::check • set 'Manufacturer Name' from 'CSPRODUCT|COMPUTERSYSTEM|BASEBOARD|BIOS' ID's -> filter 'results' via oemscan.ini
    for /f "tokens=2 delims==" %%A in ('"WMIC CSPRODUCT GET NAME /format:list"') do %INL% (set CSNAME=%%A)
    for /f "tokens=2 delims==" %%A in ('"WMIC CSPRODUCT GET VENDOR /format:list"') do %INL% (set CSVENDOR=%%A)
    for /f "tokens=2 delims==" %%A in ('"WMIC COMPUTERSYSTEM GET MODEL /format:list"') do %INL% (set SYSMODEL=%%A)
    for /f "tokens=2 delims==" %%A in ('"WMIC COMPUTERSYSTEM GET MANUFACTURER /format:list"') do %INL% (set SYSMNF=%%A)
    for /f "tokens=2 delims==" %%A in ('"WMIC BASEBOARD GET PRODUCT /format:list"') do %INL% (set BASEPRO=%%A)
    for /f "tokens=2 delims==" %%A in ('"WMIC BASEBOARD GET MANUFACTURER /format:list"') do %INL% (set BASEMNF=%%A)
    for /f "tokens=2 delims== " %%A in ('"WMIC BIOS GET VERSION /format:list"') do %INL% (set BIOVER=%%A)
    :FILTER
    ::check • filter 'results' ('findstr' specific list order -> word start|end '\<','\>') -> by-pass 'void|conflict' entries
    SET VOID1=To Be Filled By O.E.M.&SET VOID2=System Product Name&SET VOID3=System manufacturer&SET VOID4=Base Board Product Name&SET VOID5=Intel Corporation
    :CHECK1
    IF DEFINED VOID1 IF /I "%CSNAME%"=="%VOID1%" (goto :CHECK2) else IF DEFINED VOID2 IF /I "%CSNAME%"=="%VOID2%" (goto :CHECK2) else IF DEFINED VOID3 IF /I "%CSNAME%"=="%VOID3%" (goto :CHECK2) else IF DEFINED VOID4 IF /I "%CSNAME%"=="%VOID4%" (goto :CHECK2) else IF DEFINED VOID5 IF /I "%CSNAME%"=="%VOID5%" (goto :CHECK2)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%CSNAME%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECK2
    IF DEFINED VOID1 IF /I "%SYSMODEL%"=="%VOID1%" (goto :CHECK3) else IF DEFINED VOID2 IF /I "%SYSMODEL%"=="%VOID2%" (goto :CHECK3) else IF DEFINED VOID3 IF /I "%SYSMODEL%"=="%VOID3%" (goto :CHECK3) else IF DEFINED VOID4 IF /I "%SYSMODEL%"=="%VOID4%" (goto :CHECK3) else IF DEFINED VOID5 IF /I "%SYSMODEL%"=="%VOID5%" (goto :CHECK3)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%SYSMODEL%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECK3
    IF DEFINED VOID1 IF /I "%BASEPRO%"=="%VOID1%" (goto :CHECK4) else IF DEFINED VOID2 IF /I "%BASEPRO%"=="%VOID2%" (goto :CHECK4) else IF DEFINED VOID3 IF /I "%BASEPRO%"=="%VOID3%" (goto :CHECK4) else IF DEFINED VOID4 IF /I "%BASEPRO%"=="%VOID4%" (goto :CHECK4) else IF DEFINED VOID5 IF /I "%BASEPRO%"=="%VOID5%" (goto :CHECK4)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%BASEPRO%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECK4
    IF DEFINED VOID1 IF /I "%CSVENDOR%"=="%VOID1%" (goto :CHECK5) else IF DEFINED VOID2 IF /I "%CSVENDOR%"=="%VOID2%" (goto :CHECK5) else IF DEFINED VOID3 IF /I "%CSVENDOR%"=="%VOID3%" (goto :CHECK5) else IF DEFINED VOID4 IF /I "%CSVENDOR%"=="%VOID4%" (goto :CHECK5) else IF DEFINED VOID5 IF /I "%CSVENDOR%"=="%VOID5%" (goto :CHECK5)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%CSVENDOR%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECK5
    IF DEFINED VOID1 IF /I "%SYSMNF%"=="%VOID1%" (goto :CHECK6) else IF DEFINED VOID2 IF /I "%SYSMNF%"=="%VOID2%" (goto :CHECK6) else IF DEFINED VOID3 IF /I "%SYSMNF%"=="%VOID3%" (goto :CHECK6) else IF DEFINED VOID4 IF /I "%SYSMNF%"=="%VOID4%" (goto :CHECK6) else IF DEFINED VOID5 IF /I "%SYSMNF%"=="%VOID5%" (goto :CHECK6)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%SYSMNF%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECK6
    IF DEFINED VOID1 IF /I "%BIOVER%"=="%VOID1%" (goto :CHECKOUT) else IF DEFINED VOID2 IF /I "%BIOVER%"=="%VOID2%" (goto :CHECKOUT) else IF DEFINED VOID3 IF /I "%BIOVER%"=="%VOID3%" (goto :CHECKOUT) else IF DEFINED VOID4 IF /I "%BIOVER%"=="%VOID4%" (goto :CHECKOUT) else IF DEFINED VOID5 IF /I "%BIOVER%"=="%VOID5%" (goto :CHECKOUT)
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%SLIC%%\>" ^| findstr /I "\<%%BIOVER%%\>"') do %INL% (set MAN=%%c&goto :SETKEY)
    :CHECKOUT
    REG QUERY "HKLM\SYSTEM\ControlSet001\Control\SystemInformation" /v "SystemProductName" | findstr /I "\<VMware\>" >nul&&%INL% goto :SETKEY
    REG QUERY "HKLM\SYSTEM\ControlSet001\Control\SystemInformation" /v "SystemProductName" | findstr /I "\<VirtualBox\>" >nul&&%INL% goto :SETKEY
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%INFO%%\>" ^| findstr /I "\<%%BASEMNF%%"') do %INL% (set MAN=%%c&goto :SETKEY)
    :SETKEY
    ::set 'genuine' activation -> use bios version id (if detected), bios may be modded|shared (ie.'Dell PC' - bios mod 'ACRSYS-Acer'; etc) -> ('findstr' -> word start|end '\<','\>')
    IF EXIST %OEMS% for /f "tokens=1,2,3 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%SLIC%%\>" ^| findstr /I "\<%%BIOVER%%\>"') do (set MAN2=%%c)
    IF /I "%MAN%"=="DEFAULT" REG QUERY "HKLM\SYSTEM\ControlSet001\Control\SystemInformation" /v "SystemProductName" | findstr /I "\<VMware\>" >nul&&%INL% SET MAN=VMWARE
    IF /I "%MAN%"=="DEFAULT" REG QUERY "HKLM\SYSTEM\ControlSet001\Control\SystemInformation" /v "SystemProductName" | findstr /I "\<VirtualBox\>" >nul&&%INL% SET MAN=VBOX
    IF /I "%MAN2%"=="GATEWAY" IF /I "%MAN%"=="EMACHINES" SET MAN2=EMACHINES&goto :SERIAL
    IF /I "%MAN2%"=="ACER" IF /I "%MAN%"=="EMACHINES" SET MAN2=EMACHINES&goto :SERIAL
    IF /I "%MAN2%"=="ACER" IF /I "%MAN%"=="GATEWAY" SET MAN2=GATEWAY&goto :SERIAL
    IF /I "%MAN2%"=="ACER" IF /I "%MAN%"=="PBELL" SET MAN2=PBELL&goto :SERIAL
    IF /I "%MAN2%"=="HP" IF /I "%MAN%"=="COMPAQ" SET MAN2=COMPAQ&goto :SERIAL
    IF /I "%MAN2%"=="LENOVO" IF /I "%MAN%"=="IBM" SET MAN2=IBM&goto :SERIAL
    IF NOT DEFINED MAN2 SET MAN2=%MAN%&goto :SERIAL
    :SERIAL
    ::scan 'oemscan.ini' once with the provided 'Manufacturer|OS|Edition' -> if not matched, set the manufacturer (serial) to 'DEFAULTOEM' (Acer) & try again -> ('findstr' -> word start|end '\<','\>')
    IF /I "%WINVER%"=="10" GOTO :WIN810
    IF /I "%WINVER%"=="8" GOTO :WIN810
    IF NOT DEFINED WINVER GOTO :BRANDING
    IF NOT DEFINED EDITION GOTO :BRANDING
    IF EXIST %OEMS% for /f "tokens=1,2,3,4 delims=|" %%a in ('type %OEMS% ^| findstr /I "\<%%EDITION%%\>" ^| findstr /I "\<%%MAN2%%\>"') do (echo %%a | findstr /I "\<%WINVER%\>" >nul &&%INL% set PIDKEY=%%d)
    IF NOT DEFINED PIDKEY set REALMAN=%MAN2%&set MAN2=DEFAULTOEM&goto :SERIAL
    IF /I "%MAN2%"=="DEFAULTOEM" set MAN2=%REALMAN%
    :ACTIVATION
    ::create 'activate.cmd' -> 'CALL' -> from 'OOBE.cmd' for 'WIN7' or 'SetupComplete.cmd' for 'VISTA'
    (echo @echo off & echo. & echo :ACTIVATE & echo ::apply serial:: & echo cscript //nologo %windir%\system32\slmgr.vbs -ipk %PIDKEY% ^>^nul & echo ::apply certificate ^& 2nd, 3rd, 4th, etc, if available::
    echo IF EXIST "%windir%\Setup\scripts\Certificates\%MAN2%.xrm-ms" for /f "tokens=*" %%%%A in ^('DIR /B "%windir%\Setup\scripts\Certificates\%MAN2%*.xrm-ms"'^) DO ^(
    echo cscript //nologo %windir%\system32\slmgr.vbs -ilc "%windir%\Setup\scripts\Certificates\%%%%A" ^>^nul^) & echo IF EXIST "%windir%\Setup\scripts\oemscan.ini" DEL /F /Q "%windir%\Setup\scripts\oemscan.ini" ^>^nul
    echo IF EXIST "%windir%\Setup\scripts\Certificates\" DEL /S /F /Q "%windir%\Setup\scripts\Certificates\*.*" ^>^nul ^&^& RD /S /Q "%windir%\Setup\scripts\Certificates" ^>^nul) >"%windir%\Setup\scripts\activate.cmd"
    IF /I NOT "%WINVER%"=="VISTA" GOTO :OOBE
    ::'VISTA only' check 'SetupComplete.cmd' exists -> 'NO' rename|edit 'activate.cmd' -> 'YES' -> edit existing 'SetupComplete.cmd'
    IF NOT EXIST %windir%\Setup\scripts\SetupComplete.cmd (move /Y %windir%\Setup\scripts\activate.cmd %windir%\Setup\scripts\no4.txt >nul
    (echo RD /S /Q "%windir%\Setup\scripts" ^>^nul & echo DEL /F /Q %%0%% ^>^nul) >%windir%\Setup\scripts\no3.txt 
    copy /b %windir%\Setup\scripts\no4.txt+%windir%\Setup\scripts\no3.txt %windir%\Setup\scripts\SetupComplete.cmd >nul & del /F /Q %windir%\Setup\scripts\no4.txt >nul %windir%\Setup\scripts\no3.txt >nul
    ) ELSE (Type %windir%\Setup\scripts\SetupComplete.cmd | findstr /I /V /C:"@echo off" >%windir%\Setup\scripts\no2.txt && del /F /Q %windir%\Setup\scripts\SetupComplete.cmd >nul
    (echo @echo off & echo. & echo IF EXIST %windir%\Setup\scripts\activate.cmd CALL %windir%\Setup\scripts\activate.cmd ^>^nul ^&^& DEL /F /Q %windir%\Setup\scripts\activate.cmd ^>^nul) >%windir%\Setup\scripts\no1.txt 
    copy /b %windir%\Setup\scripts\no1.txt+%windir%\Setup\scripts\no2.txt %windir%\Setup\scripts\SetupComplete.cmd >nul & del /F /Q %windir%\Setup\scripts\no1.txt >nul %windir%\Setup\scripts\no2.txt >nul)
    GOTO :BRANDING
    :WIN810
    %windir%\Setup\scripts\Rw.exe /Min /NoLogo /command="ACPI Dump MSDM";"RwExit" /logfile=%windir%\Setup\scripts\msdm.log
    for /f "Skip=1 tokens=2 delims=    " %%A in ('find "-" %windir%\Setup\scripts\msdm.log') do %INL% set DM=%%A
    cscript //B %windir%\system32\slmgr.vbs /ipk %DM% >nul
    cscript //B %windir%\system32\slmgr.vbs /ato >nul
    IF EXIST "%windir%\Setup\scripts\msdm.log" DEL /F /Q "%windir%\Setup\scripts\msdm.log" >nul
    GOTO :BRANDING
    :OOBE
    ::check • apply created 'activate.cmd' -> from this 'OOBE.cmd'
    IF EXIST %windir%\Setup\scripts\activate.cmd cd /d %windir%\Setup\scripts\ && CALL "activate.cmd" >nul
    IF EXIST %windir%\Setup\scripts\activate.cmd DEL /F /Q %windir%\Setup\scripts\activate.cmd >nul
    :BRANDING
    ::check • set 'MAN=?' -> if exist 'Force_Theme_[readme].txt' || edit brand '.reg file' -> if installing 'Starter' Edition
    IF EXIST "%windir%\Setup\scripts\Rw.exe" DEL /F /Q "%windir%\Setup\scripts\Rw.exe" >nul
    cd /d %windir%\Setup\scripts\OEM's\ && for /r %%G in (.) DO IF EXIST %%G\Force_Theme_[readme].txt DEL /F /Q %%G\Force_Theme_[readme].txt >nul &&set MAN=%%~nG
    IF EXIST "%windir%\Setup\scripts\Force_Theme_[readme].txt" DEL /F /Q "%windir%\Setup\scripts\Force_Theme_[readme].txt" >nul
    IF /I NOT "%EDITION%"=="STARTER" GOTO :CONTINUE
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\%MAN%.reg" (cd /d %windir%\Setup\scripts\OEM's\%MAN%\ >nul & Type %MAN%.reg | findstr /I /V "InstallTheme" >STARTER.reg && MOVE /Y "STARTER.reg" "%MAN%.reg" >nul)
    :CONTINUE
    ::finalize branding|theme
    IF NOT EXIST "%windir%\Setup\scripts\OEM's\%MAN%\%MAN%.reg" goto :TRANSFERS
    start /w regedit /s "%windir%\Setup\scripts\OEM's\%MAN%\%MAN%.reg" && DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\%MAN%.reg" >nul
    for /f "tokens=2* delims=     " %%A IN ('REG QUERY "HKLM\HARDWARE\DESCRIPTION\System\BIOS" /v SystemProductName') DO %INL% set SYSPDT=%%B
    IF NOT DEFINED SYSPDT (goto :TRANSFERS) else IF DEFINED VOID1 IF /I "%SYSPDT%"=="%VOID1%" (goto :TRANSFERS) else IF DEFINED VOID2 IF /I "%SYSPDT%"=="%VOID2%" (goto :TRANSFERS) else IF DEFINED VOID3 IF /I "%SYSPDT%"=="%VOID3%" (goto :TRANSFERS) else IF DEFINED VOID4 IF /I "%SYSPDT%"=="%VOID4%" (goto :TRANSFERS) else IF DEFINED VOID5 IF /I "%SYSPDT%"=="%VOID5%" (goto :TRANSFERS)
    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation" /f /v "Model" /t REG_SZ /d "%SYSPDT%" >nul
    :TRANSFERS
    ::check • screen resolution -> movements|actions
    %windir%\Setup\scripts\MultiMonitorTool.exe /HideInactiveMonitors 1 /stext %windir%\Setup\scripts\monitor.txt
    for /f "tokens=2,3 delims=,: " %%i in ('type %windir%\Setup\scripts\monitor.txt ^| find /i "Right-Bottom"') do %INL% set RESLN=%%iX%%j
    IF EXIST "%windir%\Setup\scripts\MultiMonitorTool.exe" DEL /F /Q "%windir%\Setup\scripts\MultiMonitorTool.exe" >nul
    IF EXIST "%windir%\Setup\scripts\monitor.txt" DEL /F /Q "%windir%\Setup\scripts\monitor.txt" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\%RESLN%.jpg" DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" >nul && MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\%RESLN%.jpg" "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\%RESLN%.jpg" DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" >nul && MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\%RESLN%.jpg" "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" REN "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" "BACKGROUNDDEFAULT.bak" >nul && DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\*.jpg" >nul & REN "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.bak" "BACKGROUNDDEFAULT.jpg" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" REN "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" "WALLPAPER.bak" >nul && DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\*.jpg" >nul & REN "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.bak" "WALLPAPER.jpg" >nul
    :TRANSFER1
    ::check • 'Vista' -> movements|actions
    IF /I NOT "%WINVER%"=="VISTA" goto :TRANSFER2
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\backgrounds" cd /d %windir%\Setup\scripts\OEM's\%MAN%\ && RD /S /Q "backgrounds" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" REN %windir%\Web\Wallpaper\img24.jpg img24.bak && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" "%windir%\Web\Wallpaper\img24.jpg" >nul
    :TRANSFER2
    ::check • 'Win8.x and Win 10' -> movements|actions
    IF /I "%WINVER%"=="VISTA" GOTO :TRANSFER3
    IF /I "%WINVER%"=="7" GOTO :TRANSFER3
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\USER.bmp" MD "%systemdrive%\$%MAN%$\Account" >nul && MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\USER.bmp" "%systemdrive%\$%MAN%$\Account\user.bmp" >nul
    IF EXIST "%systemdrive%\$%MAN%$\Account\user.bmp" REN "%ProgramData%\Microsoft\User Account Pictures\user.bmp" "user.bmp.bak" >nul && COPY /Y "%systemdrive%\$%MAN%$\Account\user.bmp" "%ProgramData%\Microsoft\User Account Pictures\user.bmp" >nul && COPY /Y "%ProgramData%\Microsoft\User Account Pictures\user.bmp.bak" "%systemdrive%\$%MAN%$\Account\original.bmp" >nul
    IF EXIST "%systemdrive%\$%MAN%$\Account\user.bmp" REN "%ProgramData%\Microsoft\User Account Pictures\user.png" "user.png.bak" >nul && COPY /Y "%systemdrive%\$%MAN%$\Account\user.bmp" "%ProgramData%\Microsoft\User Account Pictures\user.png" >nul
    IF EXIST "%systemdrive%\$%MAN%$\Account\user.bmp" REN "%ProgramData%\Microsoft\User Account Pictures\user-40.png" "user-40.png.bak" >nul && COPY /Y "%systemdrive%\$%MAN%$\Account\user.bmp" "%ProgramData%\Microsoft\User Account Pictures\user-40.png" >nul
    IF EXIST "%systemdrive%\$%MAN%$\Account\user.bmp" REN "%ProgramData%\Microsoft\User Account Pictures\user-200.png" "user-200.png.bak" >nul && COPY /Y "%systemdrive%\$%MAN%$\Account\user.bmp" "%ProgramData%\Microsoft\User Account Pictures\user-200.png" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\OOBE.xml" DEL /F /Q "%windir%\Setup\scripts\OEM's\%MAN%\OOBE.xml" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\*.theme" TAKEOWN /F "%windir%\Resources\Themes\*.theme" >nul & ICACLS "%windir%\Resources\Themes\*.theme" /reset /T /Q >nul & ICACLS "%windir%\Resources\Themes\*.theme" /grant:r "%windir%\Resources\Themes\*.theme:(OI)(CI)F" 2>nul & REN "%windir%\Resources\Themes\aero.theme"  theme3.theme >nul & MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\*.theme" "%windir%\Resources\Themes\aero.theme" >nul
    IF EXIST "%windir%\Web\Screen\img100.jpg" TAKEOWN /F "%windir%\Web\Screen\*.jpg" >nul & ICACLS "%windir%\Web\Screen\*.jpg" /reset /T /Q >nul & IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" MD "%systemdrive%\$%MAN%$\LockScreen" >nul && MOVE /Y "%windir%\Web\Screen\img100.jpg" "%systemdrive%\$%MAN%$\LockScreen\original.jpg" >nul && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" "%systemdrive%\$%MAN%$\LockScreen\LockScreen.jpg" >nul && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" "%windir%\Web\Screen\img100.jpg" >nul
    IF EXIST "%windir%\Web\Screen\img100.png" TAKEOWN /F "%windir%\Web\Screen\*.png" >nul & ICACLS "%windir%\Web\Screen\*.png" /reset /T /Q >nul & IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" MD "%systemdrive%\$%MAN%$\LockScreen" >nul && MOVE /Y "%windir%\Web\Screen\img100.png" "%systemdrive%\$%MAN%$\LockScreen\original.png" >nul && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" "%systemdrive%\$%MAN%$\LockScreen\LockScreen.jpg" >nul && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\Backgrounds\BACKGROUNDDEFAULT.jpg" "%windir%\Web\Screen\img100.png" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" MD "%systemdrive%\$%MAN%$\Desktop" >nul && COPY /Y "%windir%\Setup\scripts\OEM's\%MAN%\WALLPAPER.jpg" "%systemdrive%\$%MAN%$\Desktop\Desktop.jpg" >nul
    IF EXIST "%systemdrive%\$%MAN%$\" MOVE /Y "%systemdrive%\$%MAN%$" "%windir%\$%MAN%$" >nul
    ::Enables f8 key for Win 8.x and Win 10 in desktops and laptops |  To disable this feature for tablets put :: in front of the line below
    bcdedit /set {default} bootmenupolicy legacy >nul
    :TRANSFER3
    ::check • 'Windows OS' -> movements|actions
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\USER.bmp" MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\USER.bmp" "%ProgramData%\Microsoft\User Account Pictures\user.bmp" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\*.theme" MOVE /Y "%windir%\Setup\scripts\OEM's\%MAN%\*.theme" "%windir%\Resources\Themes\$OEM$.theme" >nul
    IF EXIST "%windir%\Setup\scripts\OEM's\%MAN%\*.*" MD "%windir%\system32\oobe\info" 2>nul & for /f "delims==" %%F IN ('dir "%windir%\Setup\scripts\OEM's\%MAN%\*.*" /s /b') DO MOVE /Y "%%F" "%windir%\system32\oobe\info\" 2>nul
    cd /d %windir%\Setup\scripts\
    IF EXIST "%windir%\Setup\scripts\OEM's\" DEL /S /F /Q "%windir%\Setup\scripts\OEM's\*.*" >nul && RD /S /Q "%windir%\Setup\scripts\OEM's" >nul
    IF /I "%WINVER%"=="VISTA" GOTO :CLOSE
    IF EXIST "%windir%\Setup\scripts\Certificates\" DEL /S /F /Q "%windir%\Setup\scripts\Certificates\*.*" >nul && RD /S /Q "%windir%\Setup\scripts\Certificates" >nul
    IF EXIST "%windir%\Setup\scripts\oemscan.ini" DEL /F /Q "%windir%\Setup\scripts\oemscan.ini" >nul
    ::===============================================================================================================
    ::===============================================================================================================
    ::ACTIVATION
    :Choice2
    if "%layout%"=="MBR" if "%edition%"=="Enterprise" goto :KMSInstall
    if "%layout%"=="MBR" if "%edition%"=="Professional" goto :ActivationChoice
    if "%layout%"=="GPT" if "%edition%"=="Enterprise" goto :KMSInstall
    if "%layout%"=="GPT" if "%edition%"=="Professional" goto :KMSInstall
    if "%layout%"=="GPT" if not "%edition%"=="Enterprise" goto :MessageBox
    if "%layout%"=="GPT" if not "%edition%"=="Professional" goto :MessageBox
    goto :LoaderChoice
    :MessageBox
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "^!^!^!GPT Layout detected^!^!^! Skipping activation." 48
    IF %ERRORLEVEL% EQU 1 del /s /q %file% >nul && call :Choice3
    :ActivationChoice
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Windows Loader (Yes) or KMS (No) ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :LoaderChoice
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :KMSInstall
    :LoaderChoice
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Install Windows Loader ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :LoaderInstall
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Choice3
    ::===============================================================================================================
    ::LOADER INSTALL
    :LoaderInstall
    cls
    echo --------------------------------------------------------------------------------
    echo WINDOWS LOADER by Daz
    echo --------------------------------------------------------------------------------
    echo:
    %~dp0"Windows Loader.exe" /silent
    goto:Choice3
    ::===============================================================================================================
    ::KMS ACTIVATION
    :KMSInstall
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Install KMS Server by CODYQX4 ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :KMS
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Choice3
    :KMS
    cls
    echo --------------------------------------------------------------------------------
    echo KMS Server by CODYQX4
    echo --------------------------------------------------------------------------------
    echo:
    set port=1688
    md "%windir%\KMSServerService" >nul
    xcopy "KMS Server Service %vera%.exe" /s /q "%windir%\KMSServerService" /Y >nul
    ren "%windir%\KMSServerService\KMS Server Service %vera%.exe" KMSServerService.exe
    netsh advfirewall firewall add rule name="KMSServerService %port%" dir=in  program="%windir%\KMSServerService\KMSServerService.exe" localport=%port% protocol=TCP action=allow remoteip=any
    netsh advfirewall firewall add rule name="KMSServerService %port%" dir=in  program="%windir%\KMSServerService\KMSServerService.exe" localport=%port% protocol=TCP action=allow remoteip=localsubnet
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer /v Description /t REG_SZ /d "Windows Service that emulates a Key Management Service (KMS) Server" /f >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "KMSPort" /d %port% /t "REG_SZ" >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "KMSPID" /d "RandomKMSPID" /t "REG_SZ" >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "KMSHWID" /d "364F463A8863D35F" /t "REG_SZ" >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "VLActivationInterval" /d "120" /t "REG_DWORD" >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "VLRenewalInterval" /d "10080" /t "REG_DWORD" >nul
    REG ADD HKLM\SYSTEM\CurrentControlSet\services\KMSServer\Parameters /f /v "KillProcessOnPort" /d "1" /t "REG_DWORD" >nul
    sc create KMSServerService binPath= "%windir%\KMSServerService\KMSServerService.exe" type= own error= normal obj= "NT AUTHORITY\NetworkService" start= demand DisplayName= KMSServerService
    SCHTASKS /Create /TN "Reactivate Service DAILY" /TR "%windir%\KMSServerService\reactivate.cmd" /SC DAILY /MO 1 /RU SYSTEM /RL Highest /F
    SCHTASKS /Create /TN "Reactivate Service ONLOGON" /TR "%windir%\KMSServerServicereactivate.cmd" /SC ONLOGON /RU SYSTEM /RL Highest /F
    SCHTASKS /Create /TN "Reactivate Service ONSTART" /TR "%windir%\KMSServerService\reactivate.cmd" /SC ONSTART /RU SYSTEM /RL Highest /F
    >"%windir%\KMSServerService\reactivate.cmd" (
    echo @echo off
    echo :: Code by s1ave77
    echo cls
    echo echo:
    echo sc start KMSServerService ^>nul
    if /i "%edition%"=="Enterprise" echo cscript %windir%\system32\slmgr.vbs /ipk 33PXH-7Y6KF-2VJC9-XBBR8-HVTHH
    if /i "%edition%"=="Professional" echo cscript %windir%\system32\slmgr.vbs /ipk FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4
    echo cscript %windir%\system32\slmgr.vbs /skms 127.0.0.2:%port%
    echo cscript %windir%\system32\slmgr.vbs /ato
    echo sc stop KMSServerService ^>nul
    echo exit
    )
    sc start KMSServerService
    if /i "%edition%"=="Enterprise" cscript %windir%\system32\slmgr.vbs /ipk 33PXH-7Y6KF-2VJC9-XBBR8-HVTHH
    if /i "%edition%"=="Professional" cscript %windir%\system32\slmgr.vbs /ipk FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4
    cscript %windir%\system32\slmgr.vbs /skms 127.0.0.2:%port%
    cscript %windir%\system32\slmgr.vbs /ato
    sc stop KMSServerService
    ::===============================================================================================================
    ::===============================================================================================================
    ::NET INSTALL
    :Choice3
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Install .Net Framework ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :NetInstall
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Choice4
    :NetInstall
    cls
    echo --------------------------------------------------------------------------------
    echo .NET INSTALL
    echo --------------------------------------------------------------------------------
    echo:
    "%~dp0net4install.exe" /silent
    ::===============================================================================================================
    ::===============================================================================================================
    :Choice4
    set file=%temp%\messagebox.vbs
    echo set args=WScript.Arguments>%file% 
    echo wscript.quit MsgBox(Replace(Replace(args.item(1),"{cr}",vbNewLine,1,-1,1),"{qt}",Chr(34),1,-1,1),args.item(2),args.item(0))>>%file% 
    %file% "BootTask" "Reboot (mandatory for Loader) ?" 36
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :Reboot
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Exit
    ::===============================================================================================================
    :Reboot
    ::finished -> remove 'scripts' dir ('RunOnce' Reg entry) -> self delete 'OOBE.cmd'
    (echo @echo off & echo. & echo IF EXIST "%windir%\Setup\scripts\" RD /S /Q "%windir%\Setup\scripts" ^>^nul & echo DEL /F /Q %%0%% ^>^nul) >"%windir%\Cleanup.cmd"
    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" /v !Clean /t REG_SZ /d "%windir%\Cleanup.cmd" /f >nul
    Timeout /T 8 >nul
    DEL /F /Q %0% >nul
    ENDLOCAL
    shutdown.exe /r /t 0
    ::===============================================================================================================
    :Exit
    ::finished -> remove 'scripts' dir ('RunOnce' Reg entry) -> self delete 'OOBE.cmd'
    (echo @echo off & echo. & echo IF EXIST "%windir%\Setup\scripts\" RD /S /Q "%windir%\Setup\scripts" ^>^nul & echo DEL /F /Q %%0%% ^>^nul) >"%windir%\Cleanup.cmd"
    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" /v !Clean /t REG_SZ /d "%windir%\Cleanup.cmd" /f >nul
    Timeout /T 8 >nul
    DEL /F /Q %0% >nul
    ENDLOCAL
    exit
    
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  8. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,575
    15,645
    270
    #88 Mr.X, Nov 30, 2014
    Last edited by a moderator: Apr 20, 2017
    (OP)
    No it doesn't.
     
  9. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    Not sure about this Enterprise ... seems it wants to drive us mad :doh:. As it works for my Pro and most other scenarios, this can only be a minor issue.

    Let's test soon :g:.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  10. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,575
    15,645
    270
    #90 Mr.X, Nov 30, 2014
    Last edited: Nov 30, 2014
    (OP)
    But it doesn't work for Professional either... o_O
    It seems those skus which have VL channel (Pro & Ent), fail.
     
  11. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    With latest posted version on GPT Pro i correctly get the KMSInstall Choice after OEM :g:. Need to see where it's failing for you :cool2:.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  12. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    OK :flowers: !!! Last attempt is working as expected (till something unexpected happens ... only ol' Murphy decides here).

    Now we can figure out OOBE issues which appeared for you. Need to check how to inplement real OEM BIOS/UEFI into VMware. Needs some files from this forums, as i know. Only found a nice BIOS set for that purpose, but no EFI so far.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  13. murphy78

    murphy78 MDL DISM Enthusiast

    Nov 18, 2012
    7,394
    11,615
    240
    #93 murphy78, Dec 1, 2014
    Last edited by a moderator: Apr 20, 2017
    We had this UEFI check code in the diskpart script, dunno if it helps at all:
    Code:
    SetLocal EnableDelayedExpansion
    :UEFICHECK
    :Check whether user has booted with UEFI or BIOS and set UEFI=1 if UEFI
    wpeutil UpdateBootInfo
    for /f "tokens=2* delims=     " %%A in ('reg query HKLM\System\CurrentControlSet\Control /v PEFirmwareType') DO SET Firmware=%%B
    :: Note: delims is a TAB followed by a space.
    if !Firmware!==0x1 set UEFI=0
    if !Firmware!==0x2 set UEFI=1
    This is kind of a neat idea making an all-around activation script.
    Back like a year ago, we didn't have enough knowledge for that kinda scripting.
    FaiKee did post some sort of powershell line that checked bios for a key. Could be worth looking up.
     
  14. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    #94 s1ave77, Dec 1, 2014
    Last edited by a moderator: Apr 20, 2017

    Nice one ... now part of my HowToLibrary :good3:. Found another one that works likewise.

    Regarding OA 3.0, already done and quite simple:

    RWEverything:
    Code:
    set logfile=rw.log
    set rw=Rw.exe
    %rw% /Min /command="ACPI Dump MSDM";"RwExit" /logfile=rw\rw.log
    for /f "Skip=1 tokens=2 delims= " %%A in ('find "-" %logfile%') do set productkey=%%A
    if exist %logfile% del /s /q %logfile% >nul
    
    Powershell:
    Code:
    set psfile=%temp%\oa3key.ps1
    echo (Get-WmiObject -query ‘select * from SoftwareLicensingService’).OA3xOriginalProductKey>%psfile%
    for /f "tokens=*" %%a in ('powershell -executionpolicy remotesigned -File %psfile%') do set productkey=%%a
    if exist %psfile% del /s /q %psfile% >nul
    
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  15. Chibi ANUBIS

    Chibi ANUBIS MDL Chibi Developer

    Apr 28, 2014
    1,235
    910
    60
    #95 Chibi ANUBIS, Dec 1, 2014
    Last edited by a moderator: Apr 20, 2017
    This command integrated automatically the key to Windows ? Or he save in file ?
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  16. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    #96 s1ave77, Dec 1, 2014
    Last edited by a moderator: Apr 20, 2017
    Gathers the MSDM table from BIOS and writes it to LOG file. Then for-loop parses the LOG and sets the key as %productkey%.

    You'll only need to add:

    Code:
    cscript slmgr.vbs /ipk %productkey%
    Activation command to my experiences isn't need as those machines so far activated automatically at net contact :good3:.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  17. Chibi ANUBIS

    Chibi ANUBIS MDL Chibi Developer

    Apr 28, 2014
    1,235
    910
    60
    #97 Chibi ANUBIS, Dec 1, 2014
    Last edited by a moderator: Apr 20, 2017
    Oh thanks ! So I create a batch with this command ?

    Code:
    set logfile=rw.log 
    set rw=Rw.exe 
    %rw% /Min /command="ACPI Dump MSDM";"RwExit" /logfile=rw\rw.log 
    for /f "Skip=1 tokens=2 delims= " %%A in ('find "-" %logfile%') do set productkey=%%A 
    cscript slmgr.vbs /ipk %productkey%
    
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  18. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,104
    24,378
    340
    #98 s1ave77, Dec 1, 2014
    Last edited by a moderator: Apr 20, 2017
    Yep, but note: this requires RW-Everything to be present in same folder.

    You can also use the Powershell version and add the same line for key install :g:.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  19. Chibi ANUBIS

    Chibi ANUBIS MDL Chibi Developer

    Apr 28, 2014
    1,235
    910
    60
    The Powershell version is just for OA 3.0, the RW-Everything is for all, I'am wrong ?
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  20. Tito

    Tito Super Mod / Adviser
    Staff Member

    Nov 30, 2009
    18,682
    18,581
    340
    Yes, you are.

    Both are applicable for OA 3.0 only.