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

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

  1. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,554
    15,642
    270
    #1 Mr.X, Nov 21, 2014
    Last edited by a moderator: Apr 20, 2017
    For Windows 7 (single index/multi-index aka AIO)
    I already have a working $oem$ folder for a win7 aio, it works under normal setup environment not PE, however there's need to go further regarding functionality, i.e. to have user options for running features. It currently holds inside searchengine's project (need to replace it with cerberus' new one disabling self-activation) activation and oem branding. Also, if needed it runs Daz Loader for activation and finally a silent .NET Framework installer, all mentioned features are run automatically without user intervention.


    It is working fine, but sometimes I need on certain circumstances or scenarios the possibility of precisely to have user intervention (user options), this is, the possibility to run OEM branding or not, use Daz Loader or not, and finally install net framework or not.


    Some edit has to be done to my files...

    Structure in $oem$\$$\Setup\scripts\
    Code:
    OEM's <folder>
    boottask.cmd
    Keys.ini
    MultiMonitorTool.exe
    net4install.exe
    oemscan.ini
    OOBE.cmd
    Rw.exe
    setupcomplete.cmd
    Windows Loader.exe
    
    boottask.cmd
    Code:
    "%~dp0net4install.exe" /silent
    
    setupcomplete.cmd
    Code:
    @echo off
    setlocal ENABLEDELAYEDEXPANSION
    pushd "%~dp0"
    cd %~dp0
    ::===============================================================================================================
    Reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx" /v Title /t REG_SZ /d BootTask /f
    Reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx" /v Flags /t REG_DWORD /d 2 /f
    Reg add  "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\0001"  /v MyScript /t REG_SZ /d "C:\Windows\Setup\Scripts\boottask.cmd"  /f
    
    
    %~dp0"Windows Loader.exe" /silent /preactivate /swap
    cd %~dp0
    attrib -R -A -S -H *.*
    SHUTDOWN /R /T 5
    
    
    :Exit
    ENDLOCAL
    exit
    
     
  2. Tito

    Tito Admin / Adviser
    Staff Member

    Nov 30, 2009
    18,987
    19,620
    340
  3. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,092
    24,402
    340
    Your luck my 'meeting' was moved to tomorrow :D. Let's have the main discussion in the thread.

    #1. So far i have not much clue about the OEM branding procedure :g:.

    #2. What are the base files you already have and how do they look.

    #3. Again several ways to skin the cat :D.

    I myself dumped Windows Setup and use Win8.1SE to manage the HDD/SSDs, apply Windows and Boot entries, add additional Setupcomplete files. It#s a very flexible solution that also works in UEFI environments.

    Atm my Setupcomplete set's a RunOnceEx reg entry that starts the actual install script at FirstLogOn stage. At that moment the user folders are created and i can copy sttings files there. The script determines the version, then installs runtimes and programs, copies, add reg changes and activates Win 7 and OEM_DM Win 8/8.1.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  4. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,554
    15,642
    270
    OEM Branding is solved by cerberus, never mind.
     
  5. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,554
    15,642
    270
    #5 Mr.X, Nov 21, 2014
    Last edited: Nov 21, 2014
    (OP)
    It is working fine, but sometimes I need on certain circumstances or scenarios the possibility of precisely to have user intervention (user options), this is, the possibility to run OEM branding or not, use Daz Loader or not, and finally install net framework or not.
    That's it.

    I need you to modify or add a script file that ask the user if he wants to install OEM Branding then the choice: yes or no.
    Then activate using Daz Loader: yes or no
    Finally run net framework installer: yes or no.
     
  6. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,092
    24,402
    340
    What files are used. In my script (which is running at Firstlogon) there is a choice implemented.

    Thing is you have this choice every time :g:.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  7. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,092
    24,402
    340
    Ignore above, realized the edited OP :doh:.

    In what moment is oobe.cmd executed and does it interfer with the rest?
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  8. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,554
    15,642
    270
    I don't know when oobe.cmd is executed but when I've tested my aio
    1. oobe.cmd seems to be the first script run
    2. then setupcomplete.cmd as it triggers Daz Loader
    3. finally boottask.cmd as it triggers net4install.exe
    Always in that order. btw oobe.cmd never interferes with the rest. Everyting is running fine s1ave77.
    They are all run in that secuence without user intervention, automatically. The thing is that I want a little user intervention as explained in my previous posts. I need some edit to achieve so called "User options".
     
  9. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,092
    24,402
    340
    #9 s1ave77, Nov 21, 2014
    Last edited by a moderator: Apr 20, 2017
    Some changes i would suggest.


    Slimmed Setupcomplete.cmd:
    Code:
    @echo off
    setlocal ENABLEDELAYEDEXPANSION
    pushd "%~dp0"
    cd %~dp0
    ::===============================================================================================================
    Reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx" /v Title /t REG_SZ /d BootTask /f
    Reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx" /v Flags /t REG_DWORD /d 2 /f
    Reg add  "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\0001"  /v MyScript /t REG_SZ /d "C:\Windows\Setup\Scripts\boottask.cmd"  /f
    
    :Exit
    ENDLOCAL
    exit
    boottask.cmd (Loader works that way, as tested):
    Code:
    @echo off
    setlocal ENABLEDELAYEDEXPANSION
    pushd "%~dp0"
    cd %~dp0
    ::===============================================================================================================
    %~dp0"Windows Loader.exe" /silent
    "%~dp0net4install.exe" /silent
    
    
    :Exit
    ENDLOCAL
    exit
    It's possible to implement user interaction in boottask.cmd :g:.

    Question is, is it possible to merge oobe.cmd into boottask.cmd?
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  10. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,554
    15,642
    270
    #10 Mr.X, Nov 21, 2014
    Last edited: Nov 21, 2014
    (OP)
    s1ave77
    About user interaction:
    It don't matter if firstly the user is asked: Do you want to apply OEM Branding? Y/N. If Yes is entered then the process begins, a short period of time passes, then another prompt asks Do you want to activate with Daz Loader? Y/N

    In other words the three options can be prompted after each process is finalized, the three options don't have to be at once. Or whatever you say is easier to achieve.

    Let me explain better, for instance:
    Prompt > Do you want to apply OEM Branding? y/n. The user enters yes, then the process begins then after a while it finishes another prompt pops up: Do you want to activate with Daz Loader? y/n, then the user enters yes and the process begins then after a while it finishes another prompt pops up: Do you want to install .NET Framework? y/n and that's it.

    The other way is that the 3 options are prompted at the same time and according to that the 3 processes or any combination of them will run.

    Whatever is easier to achieve by you my friend.
     
  11. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,092
    24,402
    340
    If oobe.cmd runs before others, no way to control it. That's why the question if it can be merged into boottask.cmd. Afaik it should still work at that stage.

    Normally oobe.cmd is a file that is only used by OEMs, mortals use setupcomplete and/or firstlogon.cmd.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  12. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,554
    15,642
    270
    #12 Mr.X, Nov 21, 2014
    Last edited: Nov 21, 2014
    (OP)
    Please read again my post http://forums.mydigitallife.net/thr...h-User-Options?p=971613&viewfull=1#post971613

    Well, you tell me what to do man
    Now that I recall, you helped me some months ago with setupcomplete.cmd and boottask.cmd
     
  13. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,092
    24,402
    340
    As said, to have control it needs to merge OOBE.cmd into boottask.cmd. That should be possible i hope. Than in bootask a choice for each process can be offered. Even as a VBS pop-up.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  14. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,554
    15,642
    270
    Man but I am a noob you already know that. Please help me to do that.
    In other words could you do it for me? All of it.
     
  15. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,092
    24,402
    340
    Let me check some ideas, then i can say more :D. Is it only Windows 7?
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  16. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,554
    15,642
    270
    #16 Mr.X, Nov 21, 2014
    Last edited by a moderator: Apr 20, 2017
    (OP)
    By the time being yes. We can try another one for Windows 8.1 but that could be later and separate solution.

    If you need this, it's a mod by cerberus for his own oobe.cmd to skip activation on any Windows version:
    Code:
    :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
    
     
  17. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,092
    24,402
    340
    Please post your version of that script. I prepare a Windows 7 Install scenario in VM to test the ideas.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  18. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,554
    15,642
    270
    #18 Mr.X, Nov 21, 2014
    Last edited by a moderator: Apr 20, 2017
    (OP)
    The red dots are the edit he did.
    w/activation (untouched script):
    Code:
    @echo off
    
    :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    :: '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
    
    
    :CLOSE
    ::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
    
    
    

    w/o activation:
    Code:
    @echo off
    
    :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    :: '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
    
    
    :CLOSE
    ::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
    
    
    
     
  19. Mr.X

    Mr.X MDL Guru

    Jul 14, 2013
    8,554
    15,642
    270
  20. s1ave77

    s1ave77 Has left at his own request

    Aug 15, 2012
    16,092
    24,402
    340
    #20 s1ave77, Nov 21, 2014
    Last edited by a moderator: Apr 20, 2017
    As it looks, oobe.cmd can be merged into boottask.cmd. This requires the OEM projects subfolders (aka Certificates and OEM's) to be inside scripts folder.

    This would be boottask.cmd to test. I added choice as VBS pop-up and tested the base scenario (without OEM branding but activating with loader) successfully in VM.

    boottask.cmd:

    Code:
    @echo off
    setlocal ENABLEDELAYEDEXPANSION
    pushd "%~dp0"
    cd %~dp0
    ::===============================================================================================================
    ::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 ?" 4 
    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
    ::===============================================================================================================
    ::LOADER INSTALL
    :Choice2
    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 ?" 4 
    IF %ERRORLEVEL% EQU 6 del /s /q %file% >nul && call :LoaderInstall
    IF %ERRORLEVEL% EQU 7 del /s /q %file% >nul && call :Choice3
    :LoaderInstall
    cls
    echo --------------------------------------------------------------------------------
    echo WINDOWS LOADER by Daz
    echo --------------------------------------------------------------------------------
    echo:
    %~dp0"Windows Loader.exe" /silent
    ::===============================================================================================================
    ::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 ?" 4 
    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) ?" 4 
    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
    

    Attention edited once.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...