@echo off set SP_SHORT_TITLE=%1 set SP_TITLE=%2 set SERVICE_PACK_NUMBER=%3 set SECURITY_UPDATE="Security Update" set UPDATE="Update" set PARENT_DISPLAY_NAME="Windows Server 2003 - Software Updates" :: variables used to build HF inf file SET HIVEOUT= Set infname= SET SectionHeader= FOR /F "TOKENS=*" %%A IN ( 'dir /B TEMP\EXTRACT\%SP_SHORT_TITLE%\update\%SP_SHORT_TITLE%.cat' ) DO (( set infname=%%~nA.inf) & ( set SectionHeader=%4) & ( call :Fixesinstalled )) goto :eof :FixesInstalled echo. Update inf file has been parsed FOR /F "tokens=1 delims=:" %%i IN ( 'findstr /B /L /I /C:"[%SectionHeader%]" /N TEMP\%infname%' ) DO (set sourcebegin=%%i) IF not defined sourcebegin GOTO :EOF FOR /F "tokens=1 delims=:" %%i IN ( 'findstr /B /L /I /C:"[" /N TEMP\%infname% ^| FIND /V ":;"' ) DO ( IF %%i GTR %sourcebegin% ( set sourceend=%%i GOTO :exitloop) ) :exitloop FOR /F "tokens=1,2* delims=:= " %%i IN ( 'findstr /L /I /V /C:"SP_SHORT_TITLE" /N TEMP\%infname%' ) DO (IF %%i GTR %sourcebegin% (IF %%i LSS %sourceend% (IF /I NOT %infname%==%%j set sourcefile=%%j) & ( IF NOT "%%~j"=="" (call :hive %%j &echo.%SP_SHORT_TITLE% %%j>>!HIVEOUT!) ) ) ) goto :eof :hive set hive=%1 IF "%hive%"=="HKLM" set HIVEOUT=TEMP\HIVESFT.TXT IF "%hive%"=="HKCR" set HIVEOUT=TEMP\HIVECLS.TXT goto :eof :Syntax ECHO. ECHO hiveupd.cmd, Version 16:00 12/02/2006 for Windows XP / Server 2003 ECHO Read registry data section from the specified INF file ECHO Output in hiveout file ECHO. ECHO Usage: hiveupd.cmd "inf_file" ECHO. ECHO Where: "inf_file" is the file name of the INF file to be read ECHO. ECHO Note: hiveupd.cmd is called from HF1.cmd ECHO. ECHO Some parts written by Bilou_Gateux ECHO using subroutine from hp38guser Driver Compressor tool ECHO http://www.msfn.org/board/index.php?s=&showtopic=35869&view=findpost&p=246928