Tell your wife I am sorry!
My wife hates all of you too!LOL!
Glad you got this released... now I am gonna test the $h!t out of it.
Woops... guess I got in here too soon. I don't see a link to it.![]()
Updated 23 Mar 2011
This is a major update to my previous multioem addon. Like before, it is modular and expandable to your needs.
Significant script code improvements. Script now compiled into .exe with x86/x64 source compatibility and logging functionality! It also now has multiple checks and cross-checks to prevent misuse with pirated/tainted sources. I've tested extensively with legal OEM versions of x86 XP Home/Pro/MCE as well as x86 Server 2003 Standard and all activated flawlessly.
This will not activate any Retail or VLK sources! OEM SLP only.
This addon does NOT include any OEMBIOS.* files to keep the filesize down (although empty placeholders are included to show you where to place them). OEMBIOS files can be downloaded for your OEM systems from http://www.oembios.net or here.
OEMBIOS filesets are different between XP and 2003, be sure you put the correct fileset in the right folders. XP OEMBIOS files go in the \FILESETS\XP\blah\ directories. 2003 server OEMBIOS files go in the \FILESETS\2003\blah\ directories.
Here's a quote from xehqter:This addon also does not include any SLP product keys, you must provide your own SLP key. Do NOT ask for us to give you a key as that is against forum rules and the law in some countries. In this addon, the SLP key is represented by the string 11111-22222-33333-44444-55555.Windows XP and Windows 2003 OEMBIOS files use a different key to encrypt the data, file sets aren’t compatible.
I've tried to simplify this addon so that the only files you need to edit are the oemscan.ini file for each OS type (Home, Pro, MCE, W2k3) to add your keys and add your OEMBIOS.* files...that's it!
This addon should be 100% compatible with single-disc as well as multi-OS/multi-boot PowerPacker integrations. This addon should also now be fully compatible with RIS network installs as well as USB install sources. You do NOT need to specify a product key in WINNT.SIF, in fact any key that is present will be overwritten if a matching OEMBIOS fileset is used on the PC. This addon does NOT use the $OEM$ directory, but uses the OEM directory instead to make it compatible with PowerPacker.
OK, to customize your multioem addon, start by downloading the addon from this post.
(in the below instructions, just substitute "Sony Corporation" with your OEM name.
1. Decompress the addon to your desktop or other working directory.
2. Download all of the OEMBIOS files you will need from http://www.oembios.net or here (eg. 376E13C7 for "Sony Corporation")
3. Gather your SLP keys (do NOT ask here for these!).
4. In the addon, go to the FILESETS folder and open the folder using the same name as listed on the OEMBIOS.net website (eg. \FILESETS\XP\376E13C7)
5. Add the four decompressed OEMBIOS.* (bin, sig, dat, cat) files you downloaded to the Sony folder you just made (XP filesets go in FILESETS\XP\*, 2003 filesets go in FILESETS\2003\*.)
6. (OPTIONAL) Add any OEM logo files to the \Logos\blah\ folders (check the "readme.txt" file in each folder. See the \Logos\AcerSystem\ folder for a good example of the proper layout. A few can be downloaded from here: http://www.oemlogos.siginetsoftware.com/
7. Open the oemscan.ini file in the appropriate OS type folder (IE. KEYS\XP\XP_HOME for Home) with Notepad and make the following changes:
8. In the .ini text, change the CMD function as so:
9. Change the fake SLP key with your legitimate one (remember, different OS types require different product keys so you can't use a XP Pro key to activate a XP Home install).Code:[Sony Corporation] PATH="..\..\..\FILESETS\XP\376E13C7\" CMD="SetKey 11111-22222-33333-44444-55555"
10. Save and close the oemscan.ini file.
11. Recompress the Entries_OEMScan_MULTIOEM.ini file and all the folders with 7zip into a single archive so that it has the filename OEMSCAN_1.4.1_MR_SMARTEPANTS_ADDON_MULTIOEM_1.8x.7 z.
12. Integrate this addon using Siginet's RVMIntegrator only. Do NOT use nLite.
13. Enjoy.
You can see in the oemscan.ini where I have different variations of Acer, Dell, and Gateway. You can use a similar approach for other OEM makes as well if I missed any.
Integration instructions
1. Start with a clean UNBRANDED OEM CD (MSDN-OEM or System Builder OEM discs will do).
2. Integrate your favorite updatepacks/addons with either nlite or RVMI, your choice.
3. In a separate session, integrate this addon with ONLY RVMI.
4. DriverPacks, if desired, go last.
5. Build ISO.
Known issues:
1) For best results, integrate this addon AFTER nLite and with RVMI and separately from any updatepack integration to ensure all files are edited properly.
nLite will not integrate this addon properly because of the unsupported [DirMove] section; unless a new version of nLite is released that supports that function.
Also, because this addon modifies i386\winnt.sif, and nLite will overwrite winnt.sif if found, it's vital to run this addon AFTER nLite to preserve the added sections.
2) This addon will make additional entries to winnt.sif.
The following lines are added to winnt.sif:Thanks go out to xehqter, FreeStyler and Siginet for providing both the tools and inspiration for this project (my wife hates you allCode:[Data] AutoPartition=0 MsDosInitiated=0 UnattendedInstall="Yes")
They made the tools, I just repackaged them into a more usable form.
Download info:
v1.8.7
'Empty' version Download (has none of the OEM logo files)
Updated: 23 Mar 2011
File: OEMSCAN_1.4.1_MR_SMARTEPANTS_ADDON_MULTIOEM_1.8.7_ empty.7z
CRC-32: 89984e4c
MD4: edb9e8a4eff41da74025b3223d94f27b
MD5: cb2228087d3e8f90fda943e4efac957f
SHA-1: bb60b246e77a1462e89dfb5c3fa63a51e529964f
Size: 571 KB
'Full' version Download (has most of the OEM logo files preloaded).
Updated: 23 Mar 2011
File: OEMSCAN_1.4.1_MR_SMARTEPANTS_ADDON_MULTIOEM_1.8.7. 7z
CRC-32: db689220
MD4: ae899c3d16fa1fcc752b894d306dfec2
MD5: 334278682aad912a14a041f30f4bda29
SHA-1: f8a890c05ecdfca54d8ba9b7377c2aa2a91221a4
Size: 38 MB
Changelog
The 1.8.7 branch is the best by far and the most stable (and also the last).v1.8.2: The mtee utility was added in the 1.8.2 branch for logging ability.
v1.8.5: The 1.8.5 branch saw vast speed improvements in code optimization.
v1.8.6: The 1.8.6 branch fixes alternate install method detection (RIS, USB, etc.) in both the oemauto utility and the .ini winnt.sif entry (will detect the oemauto in either the install drive root or a sub-folder.)
v1.8.6.1: Fixed USB source detection (changes to both addon .ini and .exe). Added significant code to include alternate method of detecting version of Windows (not tested).
v1.8.6.2: Added code to detect both Tablet & MCE editions (user choice) and includes alternate method of detecting version of Windows from standalone environment (OEM folder must be at root of drive).
v1.8.6.3: Fixed bug that would cause the MCE/Tablet choice screen to always be displayed.
v1.8.6.4: Fixed bug that would cause the MCE/Tablet choice screen to get stuck in a loop if certain MCE files were present.
v1.8.6.5: Fixed bug that would cause the MCE/Tablet choice screen to fail. Added over-ride choices for alternate scan methods.
v1.8.6.6: Fixed all bugs. Added partial detection code for Windows Home Server v1. Released code as open-source project.
v1.8.7: Final version. Added support for foreign XP PIDs
Below are tools to help extract files from a running system. Included are tools to "Grab files" like oembios filesets, drivers, keys, etc.
Mediafire mirror for "Grab files": http://www.mediafire.com/?xu7oz7woh44m7a5
Last edited by mr_smartepants; 02-10-2013 at 11:52 AM.
Not all heroes wear capes, some wear Kevlar! OEMSCAN pre-activation addon for OEM XP & 2003
Tell your wife I am sorry!
My wife hates all of you too!LOL!
Glad you got this released... now I am gonna test the $h!t out of it.
Woops... guess I got in here too soon. I don't see a link to it.![]()
Windows XP PowerPacker Reviewed in PC-Quest & PC Utilities magazines!
RVM Integrator Reviewed in CPU magazine and Maximum PC!
--Siginet--
This will probably be my last version. I'm going to post the code in the 2nd post of this thread and make the whole project open-source.
I really don't have the time to develop this further. But someone else can take everything and run with it if they want to.
As far as I'm concerned, XP has had it's glory days. This utility has limited usefulness now.
Source code for OEMAUTO.exe version 1.8.7
Logging code by kof94
I release this code under the Creative Commons license with the understanding that it will NOT be used for warez or other illegal purposes.Code:@echo off :: This batch file was created by mr_smartepants :: Version 1.8.7 17 Mar 2011 :: No copyright laws were broken in the creation of this utility title= OEMBIOS Autodetection Utility by Mr_Smartepants echo Detecting Windows installation source, please wait : quick_check if exist %CDROM%\OEM\OEMAUTO.EXE goto VARIABLES : quick_set SET CDROM=%~d0 if exist %CDROM%\OEM\OEMAUTO.EXE goto VARIABLES : RIS_scan FOR %%i IN (C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO IF EXIST "%%i:\$win_nt$.~ls" SET CDROM=%%i:\$win_nt$.~ls if exist %CDROM%\OEM\OEMAUTO.EXE goto VARIABLES : CD_scan FOR %%i IN (Z Y X W V U T S R Q P O N M L K J I H G F E D) DO IF EXIST "%%i:\WIN51" SET CDROM=%%i: if exist %CDROM%\OEM\OEMAUTO.EXE goto VARIABLES : USB_scan FOR %%i IN (Z Y X W V U T S R Q P O N M L K J I H G F E D) DO IF EXIST "%%i:\WINSETUP\OEM" SET CDROM=%%i:\WINSETUP if exist %CDROM%\OEM\OEMAUTO.EXE goto VARIABLES :: Below code does final check for install CD. If disc not found then exit with error. : DEFINE-CD if defined CDROM ( goto VARIABLES ) else ( echo Windows source files not found. 2>&1 | mtee /+ %logfile% echo Please insert Windows CD and restart 2>&1 | mtee /+ %logfile% goto ERROR ) : VARIABLES :: Set variables path %PATH%;%CDROM%\OEM\bin set logfile=%systemdrive%\oemscan.log if exist %logfile% del /q %logfile% SET METH=0 SET KEYS="%CDROM%\OEM\KEYS" SET HOME="%KEYS%\XP\XP_HOME" SET MCE="%KEYS%\XP\XP_MCE" SET TAB="%KEYS%\XP\XP_TAB" SET PRO="%KEYS%\XP\XP_PRO" SET XP64="%KEYS%\XP\XP64" SET DATACENTER="%KEYS%\2003\DATACENTER" SET DATACENTER64="%KEYS%\2003\DATACENTER64" SET ENTERPRISE="%KEYS%\2003\ENTERPRISE" SET ENTERPRISE64="%KEYS%\2003\ENTERPRISE64" SET STANDARD="%KEYS%\2003\STANDARD" SET STANDARD64="%KEYS%\2003\STANDARD64" SET WEB="%KEYS%\2003\WEB" SET WHS="%KEYS%\2003\WHS" : START echo OEMBIOS autodetection script by Mr_Smartepants 2>&1 | mtee /+ %logfile% echo v1.8.7 17 Mar 2011 2>&1 | mtee /+ %logfile% echo Do NOT pirate Microsoft software 2>&1 | mtee /+ %logfile% echo . echo It YOUR responsibility to perform due-diligence 2>&1 | mtee /+ %logfile% echo Be certain you are installing this OS on properly licensed OEM hardware 2>&1 | mtee /+ %logfile% echo Verify the OS type with the Certificate of Authenticity attached to this PC 2>&1 | mtee /+ %logfile% echo . echo Mr_Smartepants or SiginetSoftware will NOT be held legally liable 2>&1 | mtee /+ %logfile% echo if YOU violate any copyright law by installing this OS on an unlicensed PC 2>&1 | mtee /+ %logfile% echo No copyright laws were broken in the creation of this utility 2>&1 | mtee /+ %logfile% : DOSPATH :: Find install path and set variable setLocal EnableDelayedExpansion if exist %systemroot%\system32\$winnt$.inf ( FOR /F "skip=2 usebackq" %%a IN (`FIND "dospath" %SystemRoot%\SYSTEM32\$WINNT$.INF`) DO ( set str=%%a for /f "tokens=2 delims==" %%a in ('echo !str!') do ( set dospath=%%a echo Install-Path=!dospath! 2>&1 | mtee /+ %logfile% ) :: The below is not really used for anything but user feedback for /f "skip=2 delims=\ usebackq" %%a in ('echo !str!') do ( set drivepath=%%a echo Drive-Path=!drivepath! 2>&1 | mtee /+ %logfile% )) ) else ( echo Error: `%systemroot%\system32\$winnt$.inf' file not found 2>&1 | mtee /+ %logfile% echo Beginning alternate scan method... 2>&1 | mtee /+ %logfile% goto EULAID ) : ARCH for %%a in (I386 AMD64) do if exist "%dospath%\%%a" set arch=%%a if '%arch%'=='' ( echo Error: Windows installation directory not found 2>&1 | mtee /+ %logfile% echo Beginning alternate scan method... 2>&1 | mtee /+ %logfile% goto EULAID ) else ( echo ARCH=!arch! 2>&1 | mtee /+ %logfile% ) SET METH=1 : PID if exist %dospath%\%arch%\SETUPP.INI ( for /f "tokens=2 delims==" %%a in (%dospath%\%arch%\SETUPP.INI) do ( set pid=%%a echo PID=!pid! 2>&1 | mtee /+ %logfile% ) ) else ( echo Error: `%dospath%\%arch%\SETUPP.INI' file not found 2>&1 | mtee /+ %logfile% echo Beginning alternate scan method... 2>&1 | mtee /+ %logfile% goto EULAID ) : OEM if not '%pid:~-3%'=='OEM' ( echo Error: Incorrect Windows type detected 2>&1 | mtee /+ %logfile% echo Error: This utility only works with OEM Windows 2>&1 | mtee /+ %logfile% goto ERROR ) : Version set version=%pid:~0,5% :: Windows XP Professional / MCE for %%a in (76481 76500 76392 76396 76413 76487 76440 76447 55375 55679 55274 55276 55285 55661 55639 76497 ) do if '%version%'=='%%a' goto MCE-TEST :: Windows XP Home Edition for %%a in (76477 76475 76470 76460 76412 76381 55372 55373 55677 55277 76416 76434 ) do if '%version%'=='%%a' goto HOME :: Windows XP Professional x64 for %%a in (55034 76588 ) do if '%version%'=='%%a' goto XP64 :: Windows Server 2003 if '%version%'=='69712' goto STANDARD if '%version%'=='69713' goto ENTERPRISE if '%version%'=='69754' goto DATACENTER if '%version%'=='69753' goto WEB :: Windows Server 2003 x64 if '%version%'=='69770' goto ENTERPRISE64 if '%version%'=='69769' goto DATACENTER64 :: Windows Home Server if '%version%'=='78495' goto WHS echo Error: Failed to identify Windows PID 2>&1 | mtee /+ %logfile% goto ERROR2 : MCE-TEST SET VERSION1=TAB SET VERSION2=MCE if exist %dospath%\CMPNENTS\TABLETPC\I386\TABLETPC.CAB set VERSION1=YES if exist %dospath%\CMPNENTS\MEDIACTR\I386\MEDIACTR.CAB set VERSION2=YES if '%VERSION1%'=='%VERSION2%' goto ASK : MCE1 ::SET VERSION2=MCE ::if '%VERSIONX%'=='%VERSION2%' goto MCE2 if not exist %dospath%\CMPNENTS\MEDIACTR\I386\MEDIACTR.CAB goto TAB : MCE2 echo Windows XP Media Center Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching XP MCE BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %MCE%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy :::MCE2 ::if '%VERSIONX%'== MCE goto MCE2a ::if not exist %dospath%\I386\EHOCGEN.DL_ goto TAB :::MCE2a ::GOTO MCE1 : TAB ::SET VERSION1=TAB ::if '%VERSIONX%'=='%VERSION1%' goto TAB2 if not exist %dospath%\CMPNENTS\TABLETPC\I386\TABLETPC.CAB goto PRO : TAB2 ::if not exist %systemroot%\system32\TABLETPC.CPL goto PRO echo Windows XP Tablet Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching XP Tablet BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %TAB%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : PRO if '%VERSIONX%'== PRO goto PRO2 if not exist %dospath%\win51ip goto ERROR3 : PRO2 echo Windows XP Professional Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching XP Pro BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %PRO%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : HOME if '%VERSIONX%'== HOM goto HOM2 if not exist %dospath%\win51ic goto ERROR3 : HOM2 echo Windows XP Home Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching XP Home BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %HOME%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : STANDARD if '%VER3%'== STD goto STANDARD2 if '%VER3b%'== ENT goto STANDARD2 if not exist %dospath%\win51is goto STANDARD64 : STANDARD2 echo Windows Server 2003 Standard Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching Server 2003 STANDARD BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %STANDARD%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : STANDARD64 if not exist %dospath%\win51as goto ERROR3 echo Windows Server 2003 Standard x64 Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching Server 2003 STANDARD x64 BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %STANDARD64%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : ENTERPRISE if not exist %dospath%\win51ia goto ERROR3 echo Windows Server 2003 Enterprise Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching Server 2003 ENTERPRISE BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %ENTERPRISE%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : ENTERPRISE64 if not exist %dospath%\win51aa goto ERROR3 echo Windows Server 2003 Enterprise x64 Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching Server 2003 ENTERPRISE x64 BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %ENTERPRISE64%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : WEB if not exist %dospath%\win51ib goto ERROR3 echo Windows Server 2003 Web Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching Server 2003 WEB BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %WEB%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : DATACENTER if not exist %dospath%\win51id goto ERROR3 echo Windows Server 2003 Datacenter Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching Server 2003 DATACENTER BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %DATACENTER%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : DATACENTER64 if not exist %dospath%\win51ad goto ERROR3 ECHO Windows Server 2003 Datacenter x64 Edition detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching Server 2003 DATACENTER BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %DATACENTER64%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : WHS if not exist %dospath%\win51il goto ERROR3 echo Windows Home Server detected 2>&1 | mtee /+ %logfile% ECHO This version is not yet supported. 2>&1 | mtee /+ %logfile% ::ECHO Scanning for matching Server 2003 WEB BIOS string and writing product key. 2>&1 | mtee /+ %logfile% ::%WHS%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO ERROR : XP64 if '%VER3b%'== X64 goto XP64a if not exist %dospath%\win51ap goto ERROR3 : XP64a echo Windows XP Professional x64 version detected 2>&1 | mtee /+ %logfile% ECHO Scanning for matching XP Pro x64 BIOS string and writing product key. 2>&1 | mtee /+ %logfile% %XP64%\oemscan.exe 2>&1 | mtee /+ %logfile% GOTO OEMcopy : OEMcopy :: This will scan oemscan.log for the OEM name, then match that name to the logos folder and set the variable. :: Then copy all the files from that folder to their appropriate folders on the system drive. endLocal setLocal EnableDelayedExpansion if not exist %logfile% goto ERROR4 echo Found oemscan log file for /f "tokens=* delims= " %%b in (%logfile%) do ( echo %%b | find "Matched: " > nul if not errorlevel 1 set str=%%b ) for /f "tokens=1,2 delims= " %%b in ('echo !str!') do ( set oemvar=%%b set OEMtype=%%c echo OEMtype=!OEMtype! ) set oemcopy="%CDROM%\OEM\Logos\%OEMtype%" if not exist "%oemcopy%\*" goto ERROR5 echo Attempting to move OEM logo files from !oemcopy! 2>&1 | mtee /+ %logfile% copy "%oemcopy%\*.ico" "%SystemRoot%\System32\*" copy "%oemcopy%\oemlogo.bmp" "%SystemRoot%\System32\*" copy "%oemcopy%\oeminfo.ini" "%SystemRoot%\System32\*" copy "%oemcopy%\oobe\oobeinfo.ini" "%SystemRoot%\system32\oobe\*" copy "%oemcopy%\oobe\oemeula.txt" "%SystemRoot%\System32\oobe\*" copy "%oemcopy%\oobe\OEMLOGO*.*" "%SystemRoot%\system32\oobe\images\*" MD "%SystemRoot%\Resources\Themes" copy "%oemcopy%\themes\*" "%SystemRoot%\Resources\Themes\*" MD "%SystemRoot%\Web\Wallpaper" copy "%oemcopy%\walls\*" "%SystemRoot%\Web\Wallpaper\*" ECHO Successfully activated using Method %METH% 2>&1 | mtee /+ %logfile% : END endLocal EXIT :: Numbered error codes follow for troubleshooting. : ERROR echo Script completed with errors. Logfile can be found in %systemdrive%\oemscan.log. 2>&1 | mtee /+ %logfile% echo Please report errors to Mr_Smartepants. 2>&1 | mtee /+ %logfile% echo Pirates need not bother asking for help, ye won't get any! Scurvy-Dogs. 2>&1 | mtee /+ %logfile% echo http://siginetsoftware.com/forum/showthread.php?t=541 2>&1 | mtee /+ %logfile% echo Post your oemscan.log file to the above forum with a summary of the problem. 2>&1 | mtee /+ %logfile% pause GOTO END : ERROR1 echo "Error#1. OEMSCAN cannot continue. OEM version of Windows NOT detected." 2>&1 | mtee /+ %logfile% goto ERROR : ERROR2 echo "Error#2. OEMSCAN cannot continue. Could not find suitable SLP Product ID" 2>&1 | mtee /+ %logfile% echo "This appears to be a pirated copy of Microsoft Windows" 2>&1 | mtee /+ %logfile% GOTO ERROR : ERROR3 echo "Error#3. Mismatch of PID# with disc ID. Unable to continue" 2>&1 | mtee /+ %logfile% echo "This appears to be a pirated copy of Microsoft Windows" 2>&1 | mtee /+ %logfile% GOTO ERROR : ERROR4 echo "Error#4. OEM Logo copy failed. Could not find oemscan.log" 2>&1 | mtee /+ %logfile% GOTO ERROR :ERROR5 echo "Error#5. OEM Logo copy failed. Could not find any OEM logo files in" 2>&1 | mtee /+ %logfile% ECHO !oemcopy! 2>&1 | mtee /+ %logfile% GOTO ERROR : ASK color 06 cls echo. echo. echo ********************************************************************* echo Both Tablet and Media Center detected echo ********************************************************************* echo. echo. echo What would you like to do? echo. echo 1...Install XP Tablet Edition echo. echo 2...Install XP Media Center Edition echo. echo 3...Scan using alternative method echo. echo 4...Scan using 2nd alternative method echo. echo. set /p option="Enter Option (1-4) " IF %option%==1 set VERSIONX=TAB & GOTO TAB IF %option%==2 set VERSIONX=MCE & GOTO MCE1 If %option%==3 GOTO EULAID If %option%==4 GOTO OS-check GOTO CONT ::ALTERNATE_METHOD_2 : EULAID if not exist "%systemroot%\SYSTEM32\EULA.TXT" goto OS-check SET METH=2 CLS ECHO Beginning alternate detection method #2... 2>&1 | mtee /+ %logfile% ECHO This method is NOT accurate, but I'll try my best. ECHO Detecting Product ID (PID) by scanning EULA.txt... 2>&1 | mtee /+ %logfile% FOR /F "skip=2 usebackq" %%a IN (`FIND "EULAID" %systemroot%\SYSTEM32\EULA.TXT`) DO SET EULAID=%%a ECHO Found EULAID: %EULAID% 2>&1 | mtee /+ %logfile% FOR /F "tokens=1,3,4 delims=_" %%a IN ("%EULAID:~7%") DO SET OS=%%a & SET VERSIONX=%%b & SET CHANNEL=%%c ECHO %OS% 2>&1 | mtee /+ %logfile% ECHO %VERSIONX% 2>&1 | mtee /+ %logfile% ECHO %CHANNEL% 2>&1 | mtee /+ %logfile% ::EULAID OEM check IF NOT %CHANNEL% == OEM goto ERROR1 ::Prepare system files for replacement attrib -s %systemroot%\system32\oembios.sig attrib -s %systemroot%\system32\oembios.dat attrib -s %systemroot%\system32\oembios.bin attrib -s %SystemRoot%\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\OEMBIOS.CAT ::EULAID OS check :: Windows XP Check set OS2=%OS:~0,2% for %%a in (MC) do if '%OS2%'=='%%a' goto MCE-TEST for %%a in (XP WX) do if '%OS2%'=='%%a' goto XPVersionCheck :: Windows Server 2003 Check set OS4=%OS:~0,4% for %%a in (WS03) do if '%OS4%'=='%%a' goto 2K3VersionCheck echo Error: Failed to identify Windows using alternate method 2>&1 | mtee /+ %logfile% goto ERROR2 ::EULAID Version Check : XPVersionCheck :: Windows XP Professional / MCE for %%a in (PRO MCE) do if '%VERSIONX%'=='%%a' goto MCE-TEST :: Windows XP Home Edition if '%VERSIONX%'== HOM goto HOME echo Error: Failed to identify Windows PID using alternate method #2 2>&1 | mtee /+ %logfile% goto ERROR2 : 2K3VersionCheck set VER3=%VERSIONX:~0,3% set VER3b=%VERSIONX:~-3% :: Windows Server 2003 if '%VER3%'== STD goto STANDARD if '%VER3b%'== ENT goto STANDARD if '%VER3b%'== X64 goto XP64 echo Error: Failed to identify Windows PID using alternate method #2 2>&1 | mtee /+ %logfile% goto ERROR2 ::ALTERNATE_METHOD_3 : OS-check CLS ECHO Beginning alternate detection method #3... ECHO Detecting Product ID (PID) by scanning registry... 2>&1 | mtee /+ %logfile% ::FOR /F "tokens=2*" %%A IN ('REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ProductId') DO SET pid=%%B ::FOR /F "tokens=3 delims= " %%A IN ('REG QUERY "HKLM\SYSTEM\Setup\Pid" /v Pid') DO SET pid=%%A FOR /F "tokens=2*" %%A IN ('REG QUERY "HKLM\SYSTEM\Setup\Pid" /v Pid') DO SET pid=%%B echo PID=!pid! 2>&1 | mtee /+ %logfile% if not errorlevel 1 ( SET METH=3 ::Prepare system files for replacement attrib -s %systemroot%\system32\oembios.sig attrib -s %systemroot%\system32\oembios.dat attrib -s %systemroot%\system32\oembios.bin attrib -s %SystemRoot%\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\OEMBIOS.CAT goto OEM ) else ( echo Error: Failed to identify Windows PID using alternate method #3 2>&1 | mtee /+ %logfile% goto ERROR2 ) : EOF
To quote Linus Torvalds: "Given enough eyeballs, all bugs are shallow".
Last edited by mr_smartepants; 12-19-2011 at 11:36 AM.
Not all heroes wear capes, some wear Kevlar! OEMSCAN pre-activation addon for OEM XP & 2003
OK... I took a quick lookover. Let's say I create a Multiboot 2k3 disk with Standard, Enterprise, and Web editions. Is it possible to use this? I don't see a way to add different product keys for all of them?
Windows XP PowerPacker Reviewed in PC-Quest & PC Utilities magazines!
RVM Integrator Reviewed in CPU magazine and Maximum PC!
--Siginet--
You're partially correct. For now, there is a single w2k3 oemscan.ini to house the keys.
I used the w2k3 PIDs id'd on this site: http://wiki.lunarsoft.net/wiki/Product_IDs
I could only find 4 disc identifiers for w2k3 (from the discs in my possession and from the web).
%CDROM%\win51aa
%CDROM%\win51ia
%CDROM%\win51ib
%CDROM%\win51is
Are there different keys between the subversions? (standard/enterprise/etc)?
This is easily corrected in the batchfile by adding more discriminators but I need info on each version (setupp.ini PID/disc id).
Not all heroes wear capes, some wear Kevlar! OEMSCAN pre-activation addon for OEM XP & 2003
Something isn't right here, I can not install windows after slipstreaming you pack with RVM Intergrator.
Log
Code:2009-01-22_09.54.01 Log Startup @ 09:54:01 On January 22, 2009 Running OS: WIN_XP Service Pack 3 X86 RVMIntegrator v1.5.3 "C:\Documents and Settings\Administrator\Desktop\RVM_Integrator_1.5.3\RVM_Integrator_1.5.3.exe" 09:54:01 - Windows XP Professional - OEM SP2 Found 09:54:04 - 09:54:04 - Source Drive = C:\Documents and Settings\Administrator\Desktop\iso's\Windows XP Professional (OEM) 09:54:04 - Destination Drive = C:\Documents and Settings\Administrator\Desktop\iso's\Windows XP Professional (OEM) 09:54:04 - Destination Size = 252.75 GB 09:54:04 - Working Directory = C:\Documents and Settings\Administrator\Desktop\iso's\Windows XP Professional (OEM)\I386 09:54:04 - Temp Directory = C:\Documents and Settings\Administrator\Desktop\iso's\Windows XP Professional (OEM)\I386\rvmtemp 09:54:04 - 09:54:04 - Starting Integration 09:54:04 - 09:54:04 - Checking Destination For OS Type. 09:54:04 - Windows XP Professional - OEM SP2 Found 09:54:04 - 09:54:05 - Extracting OEMSCAN_1.4.1_MR_SMARTEPANTS_ADDON_MULTIOEM_1.8.7z 09:55:27 - MD5 Hash = 210BC6BF2965DE45CA64E83EE02093B9 09:55:27 - Clearing any Read Only Attributes. 09:55:27 - 09:55:27 - Gathering temp files 09:55:28 - Processing new .CAT files found in SVCPACK 09:55:28 - 09:55:28 - Shifting Stuff Around 09:55:28 - 199 Files Moved in 0 Seconds 09:55:28 - Analyzing 1 Entry Files 09:55:28 - Processing OEMSCAN 1.4.1 Addon for multi-system installs v1.8/mr_smartepants Build Date: 2009/01/20 09:55:28 - Gathering [DirMove] Entries 09:55:28 - 09:55:28 - Prepairing System Files... 09:55:28 - sysoc.inf 09:55:28 - svcpack.inf 09:55:28 - dosnet.inf 09:55:28 - txtsetup.sif 09:55:32 - 09:55:32 - Processing Sysoc.inf 09:55:32 - Processing svcpack.inf 09:55:32 - Processing dosnet.inf 09:55:32 - Processing txtsetup.sif 09:55:33 - 09:55:33 - Compressing Files ASMS... 09:55:39 - 09:55:39 - Processing [EditFile] 09:55:39 - 09:55:39 - Moving Files Found In OEMSCAN 1.4.1 Addon for multi-system installs 09:55:39 - Moving Directories 09:55:49 - Entire .ini Processing Completed in 20 Seconds 09:55:49 - 09:55:49 - Compressing and Moving Edited Files 09:55:49 - Cleaning Up. 09:55:49 - Integration Completed. 09:55:49 - Total Integration Time = 105 Seconds 09:55:49 - ================================================================================== 09:55:49 - Log Shutdown @ 09:55:50 On 22-01-2009
Here is the error I get - *see attachment*
I have been running into this recently and I don't know why.
XP Pro SP2 intergrated (untouched otherwise)
OEMSCAN 1.4.1 Addon (just modified the .ini files for proper slp keys and added oembios files)
Any ideas?
Follow Siginet's latest software venture on Facebook!
Just click on the LIKE button on his new website here:
www.ITTechware.com
Wow, that's a new one on me. Looks to me like your source is borked.
What is your OEM source? Is it from an OEM distributor like Dell/HP/etc with it's own $OEM$ & OEM folders? Or is it a clean system-builder OEM disc?
Can you post the contents of your \i386\setupp.ini & winnt.sif files?
The oemscan.cmd file isn't even launching which makes me suspect something else.
So you take this disc and ONLY integrate my addon? No updatepacks, no nlite tweaks?
*Edit
Crap, I found a bug in the entries.ini that Siginet referenced above. The Win2k3 directories don't get copied by RVMI. The fault only affects Win2k3 integrations.
Last edited by mr_smartepants; 01-22-2009 at 08:48 AM.
Not all heroes wear capes, some wear Kevlar! OEMSCAN pre-activation addon for OEM XP & 2003
It's a clean install with a fresh oem source that has SP2 slipstreamed (not from dell / hp / etc.).
I have an .md5 and .sfv of the .iso I am using.
Here is the setupp.ini and winnt.sif (I had to zip the .sif)
I typically modify my winnt.sif file extensivly but due to the errors I have been running without it.
Let me delete my .iso's and re verify them on my box.
Follow Siginet's latest software venture on Facebook!
Just click on the LIKE button on his new website here:
www.ITTechware.com
Both .iso's were verified to be complete. I am trying again from scratch to see if it was a fluke.
1. Re-downloaded the latest .7z of oemscan
2. Reimported the XPH / XPP / XPMCE .ini's that include the SLP Keys
3. Reinserted the oembios files
4. Inserted oemlogo.bmp / oeminfo.ini to the proper folders
5. Re-zipped the files with .7z
6. Ran RVM_Integrator_1.5.3
7. Did not run any update pack / modifications / etc (it's straight SP2 slipstreamed... trying to remove possible problems)
8. Ran the .7z of oemscan
9. Made .iso
10. Threw the .iso into VMware and got the same error message! >_<
I did some digging and ran into this - http://support.microsoft.com/kb/238835
I'm gonna try to add that data tag and see what I get
Last edited by SSX4life; 01-22-2009 at 10:29 AM.
Follow Siginet's latest software venture on Facebook!
Just click on the LIKE button on his new website here:
www.ITTechware.com
Yup that was the problem ^_^
I also noticed your script removes the previous winnt.sif file in place. Not sure if this was intended but it was just my experience.
Here is my final Winnt.sif
Code:;SetupMgrTag [Data] AutoPartition=1 MsDosInitiated="0" UnattendedInstall="Yes" AutomaticUpdates=yes [Unattended] UnattendMode=ProvideDefault OemSkipEula=No OemPreinstall=No TargetPath=\WINDOWS WaitForReboot="No" DriverSigningPolicy=Ignore NonDriverSigningPolicy=Ignore [GuiUnattended] EncryptedAdminPassword=NO OEMSkipRegional=1 TimeZone=20 DetachedProgram = CMD.EXE Arguments="/Q /C FOR /F %? IN ('%SYSTEMROOT%\SYSTEM32\MOUNTVOL.EXE^|FINDSTR :\') DO IF EXIST %?WIN51 START %?.\OEM\OEMSCAN.CMD" [UserData] FullName="" OrgName="" [Display] Xresolution=1024 YResolution=768 [Identification] JoinWorkgroup=MSHOME [Networking] InstallDefaultComponents=Yes [Components] msmsgs=off msnexplr=off zonegames=off
Thanks for all the hard work on this, I think we have reached a nice completed script that does just about everything you can think of. The only other thing that needs to be done is make a Tablet version of this (I don't think you can do a multioem, so we may need to modify the pre-existing 1.4 model to run on tablet. I've gotten it to work with 1.4 and a custom winnt.sif call file.
I'll let you know how it goes ^_^
Last edited by SSX4life; 01-22-2009 at 11:31 AM.
Follow Siginet's latest software venture on Facebook!
Just click on the LIKE button on his new website here:
www.ITTechware.com
Bookmarks