ale5000 Posted December 23, 2006 Share Posted December 23, 2006 There is a way to check from the setup or from the inf file if a registry key already exist? Link to comment Share on other sites More sharing options...
ShadeTreeLee Posted February 19, 2007 Share Posted February 19, 2007 BTW, is there any way how to force (ADVPACK?) to create the installation log? Something like is visible here for wmp11: http://forums.techarena.in/showthread.php?t=513853PetrI don't know where I picked this up at but if you will merge the following reg file it will turn on Advpack logging in Win98se. The log file itself will land in the Windows folder the next time advpack.dll is used. The file gets appended to each time, so eventually can grow quite big.REGEDIT4[HKEY_LOCAL_MACHINE\Software\Microsoft\Advanced INF Setup]"AdvpackLogFile"="AdvPack.log"The same type of thing gets done with SetupAPI.log file if one substitutes ME's setupapi.dll for win98's. I didn't notice that any registry entries had any effect, but they may well as per NT5's verbosity settings. I really need to see what the ME registry shows in the following location or thereabouts:[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Setup]"LogLevel"=dword:2000ffffThe above value was suggested by an MS document on the verbosity settings for setupAPI.log, if the key/value doesn't exist in ME then I guess I really don't need it after all with my 98se?---------------------Question on Custom Destination flags is somewhat answered in WillPad's help file with a 34 flag example where a Path key is set and then if the installation package has run again the second attempt is aborted which answers in a round about manner another question in this very thread. Trouble is WillyPad help file is not very clear at times like this one, nor is this section complete as to all possible flag uses. WillyPad---------------------2,N flags for invoked advpack.dll are obscure at best. So I loaded advpack.dll using Dependency walker, then highlighted LaunchINFSectionEx, then right clicked something IIRC and a web search at msdm occured which got some of this text: NOTE that the 2 flag is still not described by MS at this detailed level!!!LaunchINFSectionEx Function Internet Development Index Launches a section of an information (INF) file.SyntaxHRESULT WINAPI LaunchINFSectionEx( HWND hwnd, HINSTANCE hInst, PSTR pszParams, INT nShow);ParametershwndHWND that specifies the owner window on which to display error messages. This parameter is typically NULL, which causes the Desktop to be the owner window.hInstHandle to the instance of the program. This parameter is typically NULL.pszParamsComma-delimited string that specifies the INF file, the section of the INF file to launch, the fully qualified path of the cabinet file (CAB) that contains the INF file, and the flags that specify the installation mode, in that order. If you do not specify the fully qualified path of the INF file, the INF file is extracted from the specified CAB file. If you do not specify a section, that is, if the section portion of the pszParams string is an empty string or is set to NULL, then the DefaultInstall section of the INF file is launched. The following flags are used to specify the installation mode. 4 Quiet mode, no UI 8 Don't run GrpConv 16 Force self-updating on user's system 32 Backup data before install 64 Rollback to previous state 128 Validate the backup data 256 Complete rollback to previous state 512 Force delay of OCX registration nShowVariable of type INT that specifies whether to reboot the user's machine upon completion. Can be one of the following values.AAlways reboot.IDefault. Reboot if needed.NNo reboot.Return ValueReturns one of the following values.S_OK The section launched successfully. E_FAIL The section failed to launch. RemarksYou can call this function using Rundll32.exe from the command line.Note Using an entry point function with Rundll32.exe does not resemble a normal function call. The function name and the name of the .dll file where it is stored are used only as command line parameters. The function definition shown in the Syntax section of this topic is only a standard prototype for all functions that you can call using Rundll32. The specific values for hwnd and hInst are not provided by the user, but are handled behind the scenes by Rundll32.ExamplesThe following examples demonstrate how to call the LaunchINFSectionEx function using Rundll32.This example demonstrates how to extract the myinf.inf INF file from the c:\temp\mydata.cab CAB file in Quiet|Backup mode, and reboot if needed.rundll32.exe advpack.dll,LaunchINFSectionEx myinf.inf,,c:\temp\mydata.cab,36This example demonstrates how to roll back to the state before the myinf.inf INF file was installed.rundll32.exe advpack.dll,LaunchINFSectionEx c:\windows\inf\myinf.inf,,,256,aFunction InformationStock Implementation advpack.dll Custom Implementation No Import library None Minimum availability Internet Explorer 5.01 Minimum operating systems Windows 2000 See AlsoAbout INF File Architecture, Using INF Files----------------------As to how combined updates work - your guess is much better than mine and even sounds plausible. But for most of them, I seem to recall there being also custom executables in the package(s) which might do just about what ever they want as far as OS testing and running of named inf files go, so I never bothered to put much brain time onto the problem. Link to comment Share on other sites More sharing options...
erpdude8 Posted February 26, 2007 Share Posted February 26, 2007 There is a way to check from the setup or from the inf file if a registry key already exist?I think there is, ale5000. but nobody has figured that out yet.i know the Q329048 security update [329048usa8.exe] for Win98/Plus 98 has to check for a certain Plus 98 registry entry for it to install files from the Q329048 update.anyone care to look at the coding of the Win98 Q329048 patch? Link to comment Share on other sites More sharing options...
soporific Posted May 5, 2007 Share Posted May 5, 2007 Is it possible check when the program is already installed (to prevent double installation) for example to stop setup if a file already exist or if registry key already exist?I was searching this thread for the answer to this *exact* question ... any clues, ideas, links, complete answers handed on a platter? Link to comment Share on other sites More sharing options...
eidenk Posted May 6, 2007 Share Posted May 6, 2007 (edited) It's certainly possible to do registry checks from batch files. Maybe the following code will give you some idea. A batch file I had made (using Tfind.com) for toggling view extensions in explorer. (Superceded since a long time by Spiritpyre's toggle extension executable) @echo offregedit /e Get.txt "HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"TFIND /e "HideFileExt" "dword:00000001" GET.txt > RESULT.TXTIF ERRORLEVEL 1 GOTO :ERROR1IF ERRORLEVEL 0 GOTO :ERROR0:ERROR1Regedit /s Show.regGOTO :END:ERROR0Regedit /s Hide.regGOTO :END:ENDDel *.txtclsFor file version check, I guess it is certainly possible to use a command line tool for extracting file versions and use it along a similar line.Maybe Verinfo : ftp://ftp.sac.sk/pub/sac/utilprog/vrinf100.zipEdit : Oops I just see that I have been off-topic as this is the thread about inf files. Edited May 6, 2007 by eidenk Link to comment Share on other sites More sharing options...
soporific Posted May 6, 2007 Share Posted May 6, 2007 It's certainly possible to do registry checks from batch files. Maybe the following code will give you some idea. A batch file I had made (using Tfind.com) for toggling view extensions in explorer. (Superceded since a long time by Spiritpyre's toggle extension executable)i was looking for a way to tell the Windows installer to check to see if the INF file i'm just about to install has already been installed. I know how to use a REG file to check to see if something is installed, AP uses that quite a bit, i want to know how to do the exact same thing with an INF file only. We have to be able to back out of the entire installation if the check isn't satisfied, so i can't think how to use a reg file in that way. all i know is how to call it, but the INF still does the rest of the installation regardless of the result of the reg file. Link to comment Share on other sites More sharing options...
soporific Posted September 25, 2007 Share Posted September 25, 2007 (edited) i'm posting this question here as this thread contains lots of INF information ... thanks for any help!i need some help with INF files ... how can i make sure that the drivers installation is unattended ... in my test system, i have a video card that is not supported by Win98 and setup finds the INF file OK, but then setup asks for all the files the INF file refers toi know the location that the files will be in, but how do i include this info in the INF file so it can all be unattended?Thanks in advance ...i have the "How to Write an INF" guide and its not helping me with this ...i'm also only modifying an existing driver INF install file so i need to understand how it all works so i can properly modify all the INF files i come across.. Edited September 25, 2007 by soporific Link to comment Share on other sites More sharing options...
ShadeTreeLee Posted September 25, 2007 Share Posted September 25, 2007 What I would do is to make a cab file containing all the files called for in the driver inf. I would then include the custom "MyVideo.cab" file containing all the driver files in the same folder with all the other Windows installation cab files.And then add these two sections into the driver.inf file that names the needed files in the Source file list and names the cab file that they are inside of in the Disk name section.[SourceDisksNames]55="All in Wonder 128 Driver Disk","MyVideo.cab",0[SourceDisksFiles]vspdx.dll=55vspp2.dll=55vspp7.dll=55vspp97.dll=5555 is a totally arbitrary number often used commonly in inf files - you must use the same number in both sections however. If Windows needs these files it will always ask for the All in Wonder 128 Driver Disk to get those files from. This is how some very confusing prompts get foisted onto the system at times, it's also ripe for the application of humor but that's really going a long way to get a laugh.Can I take a look at your "how to write an INF" guide and the driver installation package just to be sure the above mod will work out for you? My limited inf knowledge is available via PM if you need but sometimes I don't log on for a week or so. See the CAB SDK for in-depth makecab documentation. I'm thinking the 98 DDK had some info on INF files but I can't find it right now to verify that part at all. Link to comment Share on other sites More sharing options...
soporific Posted September 25, 2007 Share Posted September 25, 2007 (edited) What I would do is to make a cab file containing all the files called for in the driver inf. I would then include the custom "MyVideo.cab" file containing all the driver files in the same folder with all the other Windows installation cab files.And then add these two sections into the driver.inf file that names the needed files in the Source file list and names the cab file that they are inside of in the Disk name section.[SourceDisksNames]55="All in Wonder 128 Driver Disk","MyVideo.cab",0[SourceDisksFiles]vspdx.dll=55vspp2.dll=55vspp7.dll=55vspp97.dll=5555 is a totally arbitrary number often used commonly in inf files - you must use the same number in both sections however. If Windows needs these files it will always ask for the All in Wonder 128 Driver Disk to get those files from. This is how some very confusing prompts get foisted onto the system at times, it's also ripe for the application of humor but that's really going a long way to get a laugh.Can I take a look at your "how to write an INF" guide and the driver installation package just to be sure the above mod will work out for you? My limited inf knowledge is available via PM if you need but sometimes I don't log on for a week or so. See the CAB SDK for in-depth makecab documentation. I'm thinking the 98 DDK had some info on INF files but I can't find it right now to verify that part at all.thanks for this ... however, the only thing wrong with your method is that i will want to be deleting all these .cab files after the hardware installation part has finished. I suppose i could use a naming method and then bulk delete on the pattern i choose, but this is still a work-around my ignorance of INF files. i will resort to it if i must, but my preference is to understand the INF file so i can make it do what i want, rather than the otherway round.Thanks for the help though. See if you can gleen anything from the link ...how to write an INFthe closet i could find was this:SourceDisksFiles[sourceDisksFiles]filename=disk-number(,subdir)(,file-size)Names the source files used during installation and identifies the source disks that contain the files.so assuming you had the drivers sitting in:c:\drivers\videoin your example this would be :[SourceDisksNames]55="All in Wonder 128 Driver Disk","MyVideo.cab",0[SourceDisksFiles]vspdx.dll=55,c:\drivers\videovspp2.dll=55,c:\drivers\videovspp7.dll=55,c:\drivers\videovspp97.dll=55,c:\drivers\videobut i have no idea about syntax and i've just about run out of blank CDs and i'm not getting any more soon due to extreme poverty. (i'll survive ) Edited September 25, 2007 by soporific Link to comment Share on other sites More sharing options...
MDGx Posted September 25, 2007 Share Posted September 25, 2007 [sourceDisksFiles]vspdx.dll=55,c:\drivers\videovspp2.dll=55,c:\drivers\videovspp7.dll=55,c:\drivers\videovspp97.dll=55,c:\drivers\videoSyntax:[sourceDisksFiles]vspdx.dll=55,30,drivers\videovspp2.dll=55,30,drivers\videovspp7.dll=55,30,drivers\videovspp97.dll=55,30,drivers\videoThis should also work [ok under Win98 + 98 SE but not under WinME (?)]:[sourceDisksFiles]vspdx.dll=55,31,drivers\videovspp2.dll=55,31,drivers\videovspp7.dll=55,31,drivers\videovspp97.dll=55,31,drivers\videoFYI:Valid LDIDs for use in INF files:http://www.mdgx.com/INF_web/destdirs.htmHTH Link to comment Share on other sites More sharing options...
soporific Posted September 26, 2007 Share Posted September 26, 2007 Syntax:[sourceDisksFiles]vspdx.dll=55,30,drivers\videovspp2.dll=55,30,drivers\videovspp7.dll=55,30,drivers\videovspp97.dll=55,30,drivers\videoThis should also work [ok under Win98 + 98 SE but not under WinME (?)]:[sourceDisksFiles]vspdx.dll=55,31,drivers\videovspp2.dll=55,31,drivers\videovspp7.dll=55,31,drivers\videovspp97.dll=55,31,drivers\videoIt's not working ...This is the INF file i'm trying to adjust:; INF file for SiS530 VGA display driver.; Copyright 1998, Silicon Integrated Systems Corporation[version]Class=DISPLAYsignature="$CHICAGO$"Provider=%Mfg%CatalogFile=sis530.catDriverVer=06/22/1999, 4.11.01.1050[DestinationDirs]DefaultDestDir=11Driver.Copy = 11Inf.Copy=17Inf.Delete=17Setuplib.Copy=11OEMROM.Copy=30ICD.Delete=11[SourceDisksNames]1=,,0[SourceDisksFiles]sis530v.drv=1sis530v.vxd=1dd530.dll=1dd530_32.dll=1sis530v.inf=1setuplib.dll=1oemrom.bin=1sis530.cat=0,,920[Manufacturer]%Mfg%=Mfg[Mfg]%PCI\VEN_1039&DEV_6306.DeviceDesc%=Driver.Install, PCI\VEN_1039&DEV_6306&SUBSYS_63061039%PCI\VEN_1039&DEV_6306.DeviceDesc%=Driver.Install, PCI\VEN_1039&DEV_6306;----------------------------------------; for .inf setup[Driver.Install]DelFiles=ICD.DeleteCopyFiles=Driver.Copy, Inf.Copy, OEMROM.CopyDelReg=Prev.DelReg1, Prev.DelReg2AddReg=Driver.AddReg1, Driver.AddReg2UpdateInis=MMPower.UpdateInis[SystemIni.Update]%10%\System.ini,boot,,"display.drv=sis530v.drv",0[SystemIni.Restore]%10%\System.ini,boot,,"display.drv=pnpdrvr.drv",0[MMPower.UpdateInis]%10%\System.ini,386Enh,,"EMMExclude=C000-CFFF",0; for setup.exe[Setup.DriverCopy]DelFiles=ICD.DeleteCopyFiles=Driver.Copy, Inf.Copy, Setuplib.Copy, OEMROM.Copy; for setup.exe[Setup.Registry]DelReg=Prev.DelReg1, Prev.DelReg2AddReg=Driver.AddReg1, Driver.AddReg2UpdateInis=MMPower.UpdateInis; for package uninstall; don't rename this section[P.U]UpdateInis=SystemIni.RestoreDelReg=Prev.DelReg1, Prev.DelReg2, Uninstall.DelRegAddReg=Driver.StandardDelFiles=Driver.Copy, Inf.Copy, OEMROM.Copy; for driver uninstall[Driver.Uninst]UpdateInis=SystemIni.RestoreDelReg=Uninst.DelReg, Prev.DelReg1, Prev.DelReg2AddReg=Driver.StandardDelFiles=Driver.Copy, Inf.Copy, OEMROM.Copy;----------------------------------------[Driver.Copy]sis530v.drvsis530v.vxdsis530v.infdd530.dlldd530_32.dll; for setup.exe[Setuplib.Copy]setuplib.dll[OEMROM.Copy]oemrom.bin[Prev.DelReg1]HKR,"Customer Modes"HKCU,"Software\Silicon Integrated System Corp."[Prev.DelReg2]HKR,,VerHKR,,DrvVerHKR,,ProviderNameHKR,,DevLoaderHKR,,DriverVersionHKR,DEFAULTHKR,MODESHKR,INFOHKR,2DHKR,3D[Inf.Copy]sis530v.inf[Inf.Delete]sis530v.inf[ICD.Delete]glsis326.dll; for standard VGA recovery[Driver.Standard]HKR,,Ver,,4.0HKR,,DriverDesc,,"Standard PCI Graphics Adapter [VGA]"HKR,,ProviderName,,"Microsoft"HKR,,DevLoader,,*vddHKR,,DriverDate,,"12-8-1997"HKR,,InfPath,,"MSDISP.INF"HKR,,InfSection,,"VGA"HKR,,MatchingDeviceId,,"PCI\CC_0300"HKR,DEFAULT,Mode,,"4,640,480"HKR,DEFAULT,drv,,vga.drvHKR,DEFAULT,vdd,,"*vdd"HKR,"MODES\1\640,480",drv,,framebuf.drvHKR,"MODES\1\640,480",vdd,,"*vdd,*vflatd"HKR,"MODES\4\640,480",drv,,vga.drv[Driver.AddReg1]HKR,2D,Driving,,1HKR,2D,CheckDDC,,1HKR,3D,AGP,1,1HKR,3D,3DP,1,1HKR,PanelLink,ModuleName,,"sis53dfp.dll"HKR,2D,OEMSetup,,"0"HKR,2D,BI0,,"1"HKR,2D,BI1,,"2"HKR,2D,BI2,,"2"HKR,2D,BI3,,"2"HKR,2D,BI4,,"1"HKR,2D,BI01,,"60,72,75,85,100,120,160,200"HKR,2D,BI03,,"60,72,75,85,100,120,160,200"HKR,2D,BI05,,"60,72,75,85,100,120,160,200"HKR,2D,BI11,,"56,60,72,75,85,100,120,160"HKR,2D,BI13,,"56,60,72,75,85,100,120,160"HKR,2D,BI15,,"56,60,72,75,85,100,120,160"HKR,2D,BI21,,"43,60,70,75,85,100,120"HKR,2D,BI23,,"43,60,70,75,85,100,120"HKR,2D,BI25,,"43,60,70,75,85,100,120"HKR,2D,BI31,,"43,60,75,85"HKR,2D,BI33,,"43,60,75,85"HKR,2D,BI35,,"43,60,75,85"HKR,2D,BI41,,"60,65,70,75,85"HKR,2D,BI43,,"60,65,70,75,85"HKR,2D,BI45,,"60,65,70,75,85"[Driver.AddReg2]HKR,,Ver,,4.0HKR,,DrvVer,,"1.05.50"HKR,,ProviderName,,"Silicon Integrated Systems Corporation"HKR,,DevLoader,,*vddHKR,DEFAULT,Mode,,%DefaultMode%HKR,DEFAULT,drv,,sis530v.drvHKR,DEFAULT,drv2,,sis530v.drvHKR,DEFAULT,vdd,,"*vdd"HKR,DEFAULT,minivdd,,sis530v.vxdHKR,DEFAULT,minivdd2,,sis530v.vxdHKR,DEFAULT,RefreshRate,,-1HKR,DEFAULT,DDC,,1HKR,DEFAULT,repost,,1HKR,INFOHKR,"MODES\4\640,480",drv,,vga.drvHKR,"MODES\4\640,480",vdd,,*vddHKR,"MODES\8\640,480",,,"60,72,75,85"HKR,"MODES\8\800,600",,,"56,60,72,75,85"HKR,"MODES\8\1024,768",,,"60,70,75,85"HKR,"MODES\8\1280,1024",,,"43,75,60,85"HKR,"MODES\8\1600,1200",,,"60,65,70,75"HKR,"MODES\16\640,480"HKR,"MODES\16\800,600"HKR,"MODES\16\1024,768"HKR,"MODES\16\1280,1024"HKR,"MODES\16\1600,1200"HKR,"MODES\32\640,480"HKR,"MODES\32\800,600"HKR,"MODES\32\1024,768"HKR,"MODES\32\1280,1024"HKR,"MODES\32\1600,1200"; remove driver uninstall entry[Uninst.DelReg]; Don't remove or rename this section, used by setup.exe; command will be generated by setup.rul automatically[Uninstall.DelReg][Strings]Mfg="SiS"PCI\VEN_1039&DEV_6306.DeviceDesc="SiS 530"Desktop="Desktop"DefaultMode="16,800,600"I have tried adjusting it to:[sourceDisksNames]55="Sis Video Drivers",,0[sourceDisksFiles]sis530v.drv=55,30,drivers\videosis530v.vxd=55,30,drivers\videodd530.dll=55,30,drivers\videodd530_32.dll=55,30,drivers\videosis530v.inf=55,30,drivers\videosetuplib.dll=55,30,drivers\videooemrom.bin=55,30,drivers\videosis530.cat=0,,920and i've also triedsis530v.drv=55,31,drivers\videoetcand it doesn't work. Setup still wants to know where the files are !! Grrrrr.... INF files give me grey hairs !!! Actually they are albino white. Link to comment Share on other sites More sharing options...
soporific Posted September 26, 2007 Share Posted September 26, 2007 Eureka !!!!I've cracked this wide open.Ok, we still had to work out how to tell SETUP where the files listed in the INF were located. The way to do it is this ...1) we are launching setup from the hard drive, so we create a folder under the setup folder called "drivers" (or whatever)and then in each INF file, we change the following[SourceDisksFiles]sis530v.drv=55sis530v.vxd=55sis530v.inf=55to[SourceDisksFiles]sis530v.drv=55,driverssis530v.vxd=55,driverssis530v.inf=55,driversand we dump all the drivers into <setup folder>\driversThis method also uses the addition to MSBATCH.INF of[OEMDrivers]; Add additional driver paths for OEM specific drivers; Ensure each entry is separated by a semi-colon; HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion","OtherDevicePath",,"<drivers path>"That's it.I will post a full set of instructions at a later stage, but the above should give you the gist of it.Thanks to everyone who posted but especially SubMix8c and MDGx who provided the crucial elements! Link to comment Share on other sites More sharing options...
erpdude8 Posted December 1, 2007 Share Posted December 1, 2007 (edited) drat! "TargetFileVersion=@FileSectionList" doesn't work anymore. Anytime I try to create a package with this in the SED file with IEXPRESS it either crashes or generates an error message "SED Syntax Error in TargetFileVersion= Line" when I click the Next button and I can't continue on with creating a self extracting package. what gives? Edited December 1, 2007 by erpdude8 Link to comment Share on other sites More sharing options...
the_guy Posted December 1, 2007 Share Posted December 1, 2007 It works for me.Can you upload the sed file that's causing trouble and what version of iexpress.exe are you using?the_guy Link to comment Share on other sites More sharing options...
gerislamico Posted February 8, 2012 Share Posted February 8, 2012 (edited) I share with you a personal batch to generate SLAYOUT1.INF and SLAYOUT2.INF for Win98SE SP3Is a modding to Petr 1º Creating work folder2º Unzip in the working folder SP3.CAB WIN95.CAB, IEX.CAB and SUPP.CAB to identicaly name "SP3 WIN95, IEX, and SUPP"2º Make changes4º Creating with notepad or similar batch file into work folder5º Execute batch6º Copy new generated SLAYOUT1.INF, SLAYOUT2.INF, SP3.CAB, IEX.CAB, WIN95.CAB and SUPP.CABNote1: Find new files in a "New" folder within the workingNote2: Build Complementary Soon the CAB, with the Build U98SESP3, all in one:: Builder for U98SESP3:: 1.00 Created base for Petr:: 1.01 Add SUPP/CAB Legend by Gerislamico:: 1.02 Add Detect Windows by Gerislamico:: 1.03 Add IEX.CAB Automatized by Gerislamico:: 1.04 Add WIN95.CAB Automatized by Gerislamico:: http://www.msfn.org/board/topic/49202-sed-inf-ddf-file-format--description/page__view__findpost__p__522974 ::@echo offecho ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»echo º Automatic Builder files for Windows 98SE Service Pack 3 ºecho ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼecho.:: Detect WindowsVER > %TEMP%.\T1.DATFIND "MS-DOS" < %TEMP%.\T1.DAT > nulif not errorlevel=1 goto BadOsFIND "Windows 95" < %TEMP%.\T1.DAT > nulif not errorlevel=1 goto W9XFIND "Windows 98" < %TEMP%.\T1.DAT > nulif not errorlevel=1 goto W9XFIND "Windows ME" < %TEMP%.\T1.DAT > nulif not errorlevel=1 goto W9XFIND "Windows 2000" < %TEMP%.\T1.DAT > nulif not errorlevel=1 goto WNTFIND "Windows XP" < %TEMP%.\T1.DAT > nulif not errorlevel=1 goto WNTFIND "Windows Vista" < %TEMP%.\T1.DAT > nulif not errorlevel=1 goto BadOsFIND "Windows 7" < %TEMP%.\T1.DAT > nulif not errorlevel=1 goto BadOs:W9XSET MAC=%windir%\systemgoto PROCESS:WNTSET MAC=%windir%\system32goto PROCESS:BadOsecho Os incompatibleecho ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍgoto EXIT:PROCESSecho Listing files [SP3 Critical Files]echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍecho .Set CabinetNameTemplate=New\SP3.CAB >SP3.ddfecho .Set Compress=on >>SP3.ddfecho .Set CompressionType=LZX >>SP3.ddfecho .Set CompressionLevel=7 >>SP3.ddfecho .Set CompressionMemory=21 >>SP3.ddfecho .Set RptFileName=SP3.RPT >>SP3.ddfecho .Set MaxDiskSize=CDROM >>SP3.ddfecho .Set ReservePerCabinetSize=0 >>SP3.ddfecho .Set DiskDirectoryTemplate= >>SP3.ddfecho .Set Cabinet=ON >>SP3.ddfecho .Set MaxCabinetSize=999999999 >>SP3.ddfecho .Set InfFileName=New\SLAYOUT1.INF >>SP3.ddfecho .Set InfHeader= >>SP3.ddfecho .Set InfDiskHeader=";Auto generated file - do not edit!" >>SP3.ddfecho .Set InfDiskHeader1=[Version] >>SP3.ddfecho .Set InfDiskHeader2=Signature="$CHICAGO$" >>SP3.ddfecho .Set InfDiskHeader3=SetupClass=BASE >>SP3.ddfecho .Set InfDiskLineFormat= >>SP3.ddfecho .Set InfCabinetHeader=[SourceDisksNames] >>SP3.ddfecho .Set InfCabinetLineFormat=*cab#*="Unnoficial Windows 98 SE Service Pack 3.0","SP3.CAB",0 >>SP3.ddfecho .Set InfFileHeader= >>SP3.ddfecho .Set InfFileHeader1=[SourceDisksFiles] >>SP3.ddfecho .Set InfFileLineFormat=*file*=*cab#*,,*size*,*csum* >>SP3.ddfecho .Set InfFooter= >>SP3.ddfecho .Set SourceDir=SP3 >>SP3.ddfecho. >>SP3.ddfdir /b /on SP3\*.* >>SP3.ddfecho Processing: OKecho.echo Listing files [Supplemental Files]echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍecho .Set CabinetNameTemplate=New\SUPP.CAB >SUPP.ddfecho .Set Compress=on >>SUPP.ddfecho .Set CompressionType=LZX >>SUPP.ddfecho .Set CompressionLevel=7 >>SUPP.ddfecho .Set CompressionMemory=21 >>SUPP.ddfecho .Set RptFileName=SUPP.RPT >>SUPP.ddfecho .Set MaxDiskSize=CDROM >>SUPP.ddfecho .Set ReservePerCabinetSize=0 >>SUPP.ddfecho .Set DiskDirectoryTemplate= >>SUPP.ddfecho .Set Cabinet=ON >>SUPP.ddfecho .Set MaxCabinetSize=999999999 >>SUPP.ddfecho .Set InfFileName=New\SLAYOUT2.INF >>SUPP.ddfecho .Set InfHeader= >>SUPP.ddfecho .Set InfDiskHeader=";Auto generated file - do not edit!" >>SUPP.ddfecho .Set InfDiskHeader1=[Version] >>SUPP.ddfecho .Set InfDiskHeader2=Signature="$CHICAGO$" >>SUPP.ddfecho .Set InfDiskHeader3=SetupClass=BASE >>SUPP.ddfecho .Set InfDiskLineFormat= >>SUPP.ddfecho .Set InfCabinetHeader=[SourceDisksNames] >>SUPP.ddfecho .Set InfCabinetLineFormat=*cab#*="Unnoficial Windows 98 SE Service Pack 3.0","SUPP.CAB",0 >>SUPP.ddfecho .Set InfFileHeader= >>SUPP.ddfecho .Set InfFileHeader1=[SourceDisksFiles] >>SUPP.ddfecho .Set InfFileLineFormat=*file*=*cab#*,,*size*,*csum* >>SUPP.ddfecho .Set InfFooter= >>SUPP.ddfecho .Set SourceDir=SUPP >>SUPP.ddfecho. >>SUPP.ddfdir /b /on SUPP\*.* >>SUPP.ddfecho Processing: OKecho.echo Listing files [IE 5~6 Core Files]echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍecho .Set CabinetNameTemplate=New\IEX.CAB >IEX.ddfecho .Set Compress=on >>IEX.ddfecho .Set CompressionType=LZX >>IEX.ddfecho .Set CompressionLevel=7 >>IEX.ddfecho .Set CompressionMemory=21 >>IEX.ddfecho .Set RptFileName=IEX.RPT >>IEX.ddfecho .Set MaxDiskSize=CDROM >>IEX.ddfecho .Set ReservePerCabinetSize=0 >>IEX.ddfecho .Set DiskDirectoryTemplate= >>IEX.ddfecho .Set Cabinet=ON >>IEX.ddfecho .Set MaxCabinetSize=999999999 >>IEX.ddfecho .Set InfFileName=New\SLAYOUT3.INF >>IEX.ddfecho .Set InfHeader= >>IEX.ddfecho .Set InfDiskHeader=";Auto generated file - do not edit!" >>IEX.ddfecho .Set InfDiskHeader1=[Version] >>IEX.ddfecho .Set InfDiskHeader2=Signature="$CHICAGO$" >>IEX.ddfecho .Set InfDiskHeader3=SetupClass=BASE >>IEX.ddfecho .Set InfDiskLineFormat= >>IEX.ddfecho .Set InfCabinetHeader=[SourceDisksNames] >>IEX.ddfecho .Set InfCabinetLineFormat=*cab#*="Unnoficial Windows 98 SE Service Pack 3.0","IEX.CAB",0 >>IEX.ddfecho .Set InfFileHeader= >>IEX.ddfecho .Set InfFileHeader1=[SourceDisksFiles] >>IEX.ddfecho .Set InfFileLineFormat=*file*=*cab#*,,*size*,*csum* >>IEX.ddfecho .Set InfFooter= >>IEX.ddfecho .Set SourceDir=IEX >>IEX.ddfecho. >>IEX.ddfdir /b /on IEX\*.* >>IEX.ddfecho Processing: OKecho.echo Listing files [Win95 Core Files]echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍecho .Set CabinetNameTemplate=New\WIN95.CAB >WIN95.ddfecho .Set Compress=on >>WIN95.ddfecho .Set CompressionType=LZX >>WIN95.ddfecho .Set CompressionLevel=7 >>WIN95.ddfecho .Set CompressionMemory=21 >>WIN95.ddfecho .Set RptFileName=WIN95.RPT >>WIN95.ddfecho .Set MaxDiskSize=CDROM >>WIN95.ddfecho .Set ReservePerCabinetSize=0 >>WIN95.ddfecho .Set DiskDirectoryTemplate= >>WIN95.ddfecho .Set Cabinet=ON >>WIN95.ddfecho .Set MaxCabinetSize=999999999 >>WIN95.ddfecho .Set InfFileName=New\SLAYOUT3.INF >>WIN95.ddfecho .Set InfHeader= >>WIN95.ddfecho .Set InfDiskHeader=";Auto generated file - do not edit!" >>WIN95.ddfecho .Set InfDiskHeader1=[Version] >>WIN95.ddfecho .Set InfDiskHeader2=Signature="$CHICAGO$" >>WIN95.ddfecho .Set InfDiskHeader3=SetupClass=BASE >>WIN95.ddfecho .Set InfDiskLineFormat= >>WIN95.ddfecho .Set InfCabinetHeader=[SourceDisksNames] >>WIN95.ddfecho .Set InfCabinetLineFormat=*cab#*="Unnoficial Windows 98 SE Service Pack 3.0","WIN95.CAB",0 >>WIN95.ddfecho .Set InfFileHeader= >>WIN95.ddfecho .Set InfFileHeader1=[SourceDisksFiles] >>WIN95.ddfecho .Set InfFileLineFormat=*file*=*cab#*,,*size*,*csum* >>WIN95.ddfecho .Set InfFooter= >>WIN95.ddfecho .Set SourceDir=WIN95 >>WIN95.ddfecho. >>WIN95.ddfdir /b /on WIN95\*.* >>WIN95.ddfecho Processing: OKecho.echo Creating SP3 [SP3 Critical Files]echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍecho."%MAC%\makecab.exe" /f SP3.ddfecho.echo Creating SUPP [Supplemental Files]echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍecho."%MAC%\makecab.exe" /f supp.ddfecho.echo Creating IEX [ IE 5~6 Core Files ]echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍecho."%MAC%\makecab.exe" /f iex.ddfecho.echo Creating WIN95 [Win95 Core Files]echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍecho."%MAC%\makecab.exe" /f WIN95.ddfecho.del SP3.rptdel supp.rptdel iex.rptdel win95.rptdel SP3.ddfdel supp.ddfdel iex.ddfdel win95.ddfecho.echo Finish. Press key to exit batchecho ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍpause:EXITCLSEXITBUILDSP3_1.04.ZIP Edited February 24, 2012 by gerislamico Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now