Jump to content

Welcome to MSFN Forum
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account


Photo

SED, INF, DDF file format description

- - - - -

  • Please log in to reply
59 replies to this topic

#26
erpdude8

erpdude8

    MSFN Master

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,139 posts

Commonly used version ranges by Microsoft:
TargetWin9xVersion=4.0.950-4.0.1212 - Windows 95
TargetWin9xVersion=4.10.1998-4.10.2222 - Windows 98
TargetWin9xVersion=4.90.3000 - Windows ME

the same for TargetNTVersion

Is anybody able to test it?

Petr


I wouldnt use that kind of TargetWin9xVersion setting for Windows 95. That may not work for Win95 B/C systems with the USB Supplement Update installed which updates Win95 OSR2 to either version 4.03.1212 or 4.03.1214.

personally I prefer 'TargetWin9xVersion=4.00.950-4.03.1214' when making patches for Win95

see MS KB article 158238 on the 9x versions of Windows being used:
http://support.microsoft.com/kb/158238

thanks MDGx for posting up the INF + IExpress guide.

Edited by erpdude8, 29 June 2006 - 11:55 AM.



How to remove advertisement from MSFN

#27
erpdude8

erpdude8

    MSFN Master

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,139 posts
some of the stuff written in MS article 197147 about Command-line switches for IExpress packages is incorrect. For example the /r:s switch, which supposed to make the package restart the computer without asking the user after install, does NOT really restart the computer automatically. Reading the INF + IExpress web guide about the 'Smart Reboot' switches, it's actually 'AS' [or /r:as]. If you want to force and IExpress package like any Win98 hotfix to automatically restart the computer specify the /r:as switch (or even the /r:is switch if the files that are being updated are in use by the Windows OS).

#28
erpdude8

erpdude8

    MSFN Master

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,139 posts

Windows XP SP2 contains already newer Iexpress by default.


Windows Server 2003 SP1 contains even NEWER IExpress.exe file than in XP SP2. WinServ2k3 SP1 has 6.00.3790.1830. Too bad M$ did not include updated makecab.exe and wextract.exe files in Service Pack 1 of Windows Server 2003.

#29
Petr

Petr

    Friend of MSFN

  • Member
  • PipPipPipPipPip
  • 981 posts
  • OS:98SE
  • Country: Country Flag

Windows Server 2003 SP1 contains even NEWER IExpress.exe file than in XP SP2. WinServ2k3 SP1 has 6.00.3790.1830. Too bad M$ did not include updated makecab.exe and wextract.exe files in Service Pack 1 of Windows Server 2003.

Windows Server 2003 SP2 (beta) contains even NEWER IExpress.exe - 6.00.3790.2725. Again no updated makecab.exe and wextract.exe files.

Petr

#30
erpdude8

erpdude8

    MSFN Master

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,139 posts


Windows Server 2003 SP1 contains even NEWER IExpress.exe file than in XP SP2. WinServ2k3 SP1 has 6.00.3790.1830. Too bad M$ did not include updated makecab.exe and wextract.exe files in Service Pack 1 of Windows Server 2003.

Windows Server 2003 SP2 (beta) contains even NEWER IExpress.exe - 6.00.3790.2725. Again no updated makecab.exe and wextract.exe files.

Petr


that sucks doesnt it Petr for MS not to include updated makecab.exe and wextract.exe files? I think Win2003 SP2 may come out either late this year or early next year. There will be an XP SP3 sometime in 2007. MS definitely needs to address the date problems when creating CAB or self-extracting CAB files with the Windows Server 2003 version of makecab.exe.

#31
Petr

Petr

    Friend of MSFN

  • Member
  • PipPipPipPipPip
  • 981 posts
  • OS:98SE
  • Country: Country Flag

that sucks doesnt it Petr for MS not to include updated makecab.exe and wextract.exe files? I think Win2003 SP2 may come out either late this year or early next year. There will be an XP SP3 sometime in 2007. MS definitely needs to address the date problems when creating CAB or self-extracting CAB files with the Windows Server 2003 version of makecab.exe.


BTW, makecab.exe 6.0.5384.4 (from Windows Vista beta 2) works correctly on Windows XP and uses correctly the "modified" date, not "created" as version 5.1.2600.2180.

Petr

#32
Camarade_Tux

Camarade_Tux

    MSFN Addict

  • Member
  • PipPipPipPipPipPipPip
  • 1,760 posts
@Petr, good news. :)

Do you know if makecab is now threaded ?
It would be really pleasant. :w00t:

#33
erpdude8

erpdude8

    MSFN Master

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,139 posts

BTW, makecab.exe 6.0.5384.4 (from Windows Vista beta 2) works correctly on Windows XP and uses correctly the "modified" date, not "created" as version 5.1.2600.2180.

Petr


is wextract.exe also included in Windows Vista?

#34
Petr

Petr

    Friend of MSFN

  • Member
  • PipPipPipPipPip
  • 981 posts
  • OS:98SE
  • Country: Country Flag

is wextract.exe also included in Windows Vista?


Yes, it is.

Petr

#35
erpdude8

erpdude8

    MSFN Master

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,139 posts
what version of wextract.exe is included in the latest beta of Windows Vista?

#36
Petr

Petr

    Friend of MSFN

  • Member
  • PipPipPipPipPip
  • 981 posts
  • OS:98SE
  • Country: Country Flag

what version of wextract.exe is included in the latest beta of Windows Vista?

Vista pre-rc1 build 5552 contains version 6.0.5552.16384

Petr

#37
Petr

Petr

    Friend of MSFN

  • Member
  • PipPipPipPipPip
  • 981 posts
  • OS:98SE
  • Country: Country Flag


what version of wextract.exe is included in the latest beta of Windows Vista?

Vista pre-rc1 build 5552 contains version 6.0.5552.16384

Vista rc1 build 5600 contains version 6.0.5600.16384 (vista_rc1.060829-2230)

I have uploaded iexpress/wextract/makecab/advpack from vista rc1 here: http://home.tiscali....xpress-5600.zip

Petr

#38
Petr

Petr

    Friend of MSFN

  • Member
  • PipPipPipPipPip
  • 981 posts
  • OS:98SE
  • Country: Country Flag



Commonly used version ranges by Microsoft:
TargetWin9xVersion=4.0.950-4.0.1212 - Windows 95
TargetWin9xVersion=4.10.1998-4.10.2222 - Windows 98
TargetWin9xVersion=4.90.3000 - Windows ME


I wouldnt use that kind of TargetWin9xVersion setting for Windows 95. That may not work for Win95 B/C systems with the USB Supplement Update installed which updates Win95 OSR2 to either version 4.03.1212 or 4.03.1214.

personally I prefer 'TargetWin9xVersion=4.00.950-4.03.1214' when making patches for Win95

see MS KB article 158238 on the 9x versions of Windows being used:
http://support.microsoft.com/kb/158238


Versions reported to iexpress package (wextract stub):
Windows 95 retail, OEM and OSR1: 4.00.950
Windows 95 OSR2, OSR2.1 and OSR2.5 without USB supplement: 4.00.1111
Windows 95 OSR2.1 and OSR2.5 with USB supplement: 4.00.1212

So TargetWin9xVersion=4.0.950-4.0.1212 is sufficient to cover all Windows 95 versions and old Microsoft packages contain this range. Newer packages from Microsoft contain wider range 4.00.950-4.03.1214 but this seems to be unnecessary.

MSKB article 158238 does not provide correct information. For example, the version displayed on the System Properties General tab is different:
Windows 95 retail and OEM: 4.00.950
Windows 95 retail with SP1 and OSR1: 4.00.950a (not 4.00.950A)
Windows 95 OSR2 and OSR2.1: 4.00.950 B (not 4.00.950B)
Windows 95 OSR2.5: 4.00.950 C (not 4.00.950C) (after uninstalling USB supplement is changed to 4.00.950 b)

Version stored in registry in HKLM\Software\Microsoft\Windows\CurrentVersion, keys VersionNumber and SubVersionNumber:
Windows 95 retail and OEM: 4.00.950
Windows 95 retail with SP1 and OSR1: 4.00.950a
Windows 95 OSR2 and OSR2.1 without USB supplement: 4.00.1111 B
Windows 95 OSR2.1 with USB supplement: 4.03.1212 B or 4.03.1214 B
Windows 95 OSR2.5 without USB supplement: 4.00.1111 C
Windows 95 OSR2.5 with USB supplement: 4.03.1214 C
Windows 95 OSR2.5 after uninstalling USB supplement: 4.00.1111 b
Note: There are two versions of USB supplement USBSUPP.EXE, 4.03.1212 and 4.03.1214. In all versions of OSR 2.1 and OSR 2.5 seems to be USBSUPP.EXE 4.03.1214 only, KB181661 lists 4.03.1214 version too, USBSUPP.EXE 4.03.1212 I have found here only: http://www.usbman.co...ate/usbsupp.zip

DOS command VER reports 4.00.950 for retail/SP1/OEM/OSR1 and 4.00.1111 for OSR2.x.

Windows command WINVER reports just "Windows 95" for all sub-versions.

Edited by Petr, 09 September 2006 - 08:21 AM.


#39
sepehrst

sepehrst
  • Member
  • 1 posts
Hi EveryOne

I have discovered many hidden SED file directives several years ago
I think this is a good place to share it

I suggest you to complete it or provide more descriptions about directives if you know something.

Here it is...


Template.sed

[Version]
;Class=IEXPRESS
;SEDVersion=3
;CDFVersion=3



[Options]
;AppErrorCheck=
;AlwaysPropogateCmdExitCode=
;PropogateCmdExitCode=
;PlatformDir=
;PackagePurpose=InstallApp CreateCab ExtractOnly
;ShowInstallProgramWindow=0
;Quantum=
;CompressionType=NONE QUANTUM MSZIP LZX
;CompressionMemory=15-21
;CompressionLevel=1-7
;MultiInstanceCheck=P or B,"Cookie String" P = Prompt , B = Block
;HideExtractAnimation=0
;UseLongFileName=0
;UpdateAdvDlls=1
;PackageInstallSpace(KB)=
;Compress=OFF
;KeepCabinet=1
;RebootMode=I
;InstallPrompt=%InstallPrompt%
;DisplayLicense=%DisplayLicense%
;FinishMessage=%FinishMessage%
;TargetName=%TargetName%
;FriendlyName=%FriendlyName%
;AppLaunched=%AppLaunched%
;PostInstallCmd=%PostInstallCmd%
;AdminQuietInstCmd=%AdminQuietInstCmd%
;UserQuietInstCmd=%UserQuietInstCmd%
;SourceMediaLabel=
;IEXP_LayoutINF=
;SourceFiles=SourceFiles
;CheckAdminRights=1
;TargetNTVersion=%VersionRange%:%Prompt%:ok OkCancel YesNo
;TargetWin9xVersion=4.10.1998-4.10.2222:%Prompt%:ok OkCancel YesNo
;TargetFileVersion=@FileVersionSection
;InsideCompressed=0
;CAB_FixedSize=0
;CAB_ResvCodeSigning=0,2048,4096,6144
;PackageForX86=
;VersionInfo=VersionSection
;ExtractorStub=


[FileVersionSection]
;1=#S\%File%:%VersionRange%:%Prompt%:ok OkCancel YesNo
;2=#W\
;3=#A\
; #S System Directory
; #W Windows Directory
; #A I guess Application Directory (not sure)


[VersionSection]
;FileDescription=
;CompanyName=
;FileVersion=
;ProductVersion=
;OriginalFilename=
;LegalCopyright=
;ProductName=
;InternalName=
;FromFile= Reads Version info Resouce from Specified PE file


[Strings]
;AdminQuietInstCmd=
;UserQuietInstCmd=
;FILE0=


[SourceFiles]
;SourceFiles0=%Path%
;SourceFiles1=


[SourceFiles0]
;%FILE0%=
;%FILE1%=


;Notes:
;Passing #e and #d parameters to the install command,
;will be converted to <full path> and <directory path>
;of the extractor package respectively.
; It is safer to pass "#e" or "#d" instead of #e or #d

Edited by sepehrst, 25 September 2006 - 04:04 AM.


#40
erpdude8

erpdude8

    MSFN Master

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,139 posts
MDGx, I have noticed recently that some of the unofficial patches for Win9xME have been created or revised from version 6.00.2800.1168 of wextract.exe. where can this specific version be found?

#41
erpdude8

erpdude8

    MSFN Master

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,139 posts

Petr, Gape, Tihiy + other developers, you might find this useful:

somebody made a small GUI tool [works with all Win9x/ME editions, even if it is meant for NTx] which converts REG files into INF files [GNU GPL open source]:
http://www.paraglidernc.com/12142.html
ConvRegToInf is designed specifically for Bart's PEBuilder tool [works only with NTx OSes]:
http://www.nu2.nu/pebuilder/
Download ConvRegToInf [11 KB]:
http://www.paraglide...vRegToInf02.zip
ConvRegToInf requires NFR 1.0 or newer already installed:
http://msdn.microsof...s/framework1_1/


The INF-Tool found at the following site can also convert REG files into INF files AND does NOT require .NET Framework and can work under Win9xME and WinNTx OSes.
http://www.inner-smile.com/dl_inf.htm
the "lite" version of INF-Tool is free for personal use

#42
MDGx

MDGx

    98SE2ME + 98MP10

  • Super Moderator
  • 2,678 posts
  • OS:none specified
  • Country: Country Flag

MDGx, I have noticed recently that some of the unofficial patches for Win9xME have been created or revised from version 6.00.2800.1168 of wextract.exe. where can this specific version be found?

Petr posted it here:
http://www.msfn.org/...i...st&p=560359

Thanks for the INF-tool.

Edited by MDGx, 12 October 2006 - 10:00 AM.


#43
Petr

Petr

    Friend of MSFN

  • Member
  • PipPipPipPipPip
  • 981 posts
  • OS:98SE
  • Country: Country Flag
I'm trying to understand how combined updates work, i.e. one packege for 98 Gold + 98 SE, or one package for 95 Gold, 95 OSR2 and 95 OSR 2.x but I'm lost a bit.

An example for Windows 95. The controlling 175086up.inf executed by the WEXTRACT contains:
[DefaultInstall]
RunPreSetupCommands	= Win95.Ver.Check, OSR2.Ver.Check, OSR21.Ver.Check

[Win95.Ver.Check]
"rundll32 advpack.dll,LaunchINFSection 95G_chk.inf,DefaultInstall,2,N"

[OSR2.Ver.Check]
"rundll32 advpack.dll,LaunchINFSection OSR2_chk.inf,DefaultInstall,2,N"

[OSR21.Ver.Check]
"rundll32 advpack.dll,LaunchINFSection OSR21chk.inf,DefaultInstall,2,N"

What mean "2,N" flags here? http://msdn.microsof...hinfsection.asp seems not to describe them.

But OK, in general it means that all three infs (95G_chk.inf, OSR2_chk.inf, OSR21chk.inf) are executed.

What they contain interesting: 95G_chk.inf
[DefaultInstall]
CustomDestination	= 95GonlyDestination

[95GonlyDestination]
49000 = W95GonlyReg, 54

[W95GonlyReg]
"HKLM",%Osr2Key%,%Osr2Val%,"",""
"","","","",""

[Strings]
Osr2Key 		= "SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\OptionalComponents"
Osr2Val 		= "DeskMgmt"
Osr2_chk.inf contains:
[DefaultInstall]
CustomDestination	= OSR2onlyDestination

[OSR2onlyDestination]
49001 = OSR2XonlyReg, 22
49002 = OSR2onlyReg, 54

[OSR2XonlyReg]
"HKLM",%Osr2Key%,%Osr2Val%,"",""
"","","","",""

[OSR2onlyReg]
"HKLM",%Osr21Key%,%Osr21Val%,"",""
"","","","",""

[Strings]
Osr2Key 		= "SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\OptionalComponents"
Osr2Val 		= "DeskMgmt"
OSR21Key 		= "System\CurrentControlSet\Services\VxD\NTKern"
OSR21Val 		= "StaticVxD"
and Osr21chk.inf contains:
[DefaultInstall]
CustomDestination	= OSR21onlyDestination

[OSR21onlyDestination]
49001 = OSR2XonlyReg, 22
49003 = OSR21onlyReg, 22

[OSR2XonlyReg]
"HKLM",%Osr2Key%,%Osr2Val%,"",""
"","","","",""

[OSR21onlyReg]
"HKLM",%Osr21Key%,%Osr21Val%,"",""
"","","","",""

[Strings]
Osr2Key 		= "SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\OptionalComponents"
Osr2Val 		= "DeskMgmt"
OSR21Key 		= "System\CurrentControlSet\Services\VxD\NTKern"
OSR21Val 		= "StaticVxD"

And for Windows 98 (256015 as an example): 256015up.inf contains
[DefaultInstall]
RunPreSetupCommands	= G.Ver.Check
RunPostSetupCommands	= SE.Ver.Check

[G.Ver.Check]
"rundll32 advpack.dll,LaunchINFSection 98G_chk.inf,DefaultInstall,2,N"

[SE.Ver.Check]
"rundll32 advpack.dll,LaunchINFSection 98SE_chk.inf,DefaultInstall,2,N"
so again both INFs are executed.
98G_chk.inf contains:
[DefaultInstall]
CustomDestination	= 98SEonlyDestination

[98SEonlyDestination]
49000 = W98SEonlyReg, 50

[W98SEonlyReg]
"HKLM",%98SEKey%,%98SEVal1%,"",""
"","","","",""

[Strings]
98SEKey			= "Software\Microsoft\Windows\CurrentVersion\Setup\OptionalComponents"
98SEVal1		= "ICS"

98SE_chk.inf contains:
[DefaultInstall]
CustomDestination	= 98SEonlyDestination

[98SEonlyDestination]
49000 = W98SEonlyReg, 22 

[W98SEonlyReg]
"HKLM",%98SEKey%,%98SEVal1%,"",""
"","","","",""

[Strings]
98SEKey			= "Software\Microsoft\Windows\CurrentVersion\Setup\OptionalComponents"
98SEVal1		= "ICS"

Apparently the logic is:
For Windows 95, if value DeskMgmt does not exist, it is Windows 95 Gold (4.00.950), if it exists, but StaticVxD does not exist, it is OSR2 (4.00.1111) and if StaticVxD exists, it is OSR2 with USB supplement, i.e. OSR2.1 or OSR2.5 (4.00.1212 or 4.03.1214).
For Windows 98, if value ICS does not exist, it is Windows 98 Gold (4.10.1998), if it exists, it is Second Edition (4.10.2222).

The only information I was able to find for meaning of the number at the end of the lines in Destionation sections is here: http://www.mdgx.com/...eb/custdest.htm but there is just
1=prompt user
5=no prompt
but what means 22, 50 and 54?

And how this exactly works?

BTW, is there any way how to force (ADVPACK?) to create the installation log? Something like is visible here for wmp11: http://forums.techar...ad.php?t=513853

Petr

#44
ale5000

ale5000

    Divoratore di anime

  • Member
  • 48 posts
  • OS:none specified
  • Country: Country Flag
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?

#45
erpdude8

erpdude8

    MSFN Master

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,139 posts

BTW, is there any way how to force (ADVPACK?) to create the installation log? Something like is visible here for wmp11: http://forums.techar...ad.php?t=513853

Petr


not sure. I know under my WinME computer, it creates or appends the AdvpackExt.log and setupapi.log files in the WINDOWS folder when running or using the ADVPACK.DLL file. I'm not sure how "advpack logging" is enabled under ME.

Edited by erpdude8, 22 December 2006 - 10:43 AM.


#46
ale5000

ale5000

    Divoratore di anime

  • Member
  • 48 posts
  • OS:none specified
  • Country: Country Flag
There is a way to check from the setup or from the inf file if a registry key already exist?

#47
ShadeTreeLee

ShadeTreeLee

    Junior

  • Member
  • Pip
  • 82 posts

BTW, is there any way how to force (ADVPACK?) to create the installation log? Something like is visible here for wmp11: http://forums.techar...ad.php?t=513853

Petr


I 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:2000ffff
The 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.

Syntax

HRESULT WINAPI LaunchINFSectionEx( HWND hwnd,
HINSTANCE hInst,
PSTR pszParams,
INT nShow
);
Parameters

hwnd
HWND 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.

hInst
Handle to the instance of the program. This parameter is typically NULL.

pszParams
Comma-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

nShow
Variable of type INT that specifies whether to reboot the user's machine upon completion. Can be one of the following values.
A
Always reboot.
I
Default. Reboot if needed.
N
No reboot.

Return Value
Returns one of the following values.

S_OK The section launched successfully.
E_FAIL The section failed to launch.


Remarks

You 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.
Examples

The 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,36
This 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,a
Function Information

Stock Implementation advpack.dll
Custom Implementation No
Import library None
Minimum availability Internet Explorer 5.01
Minimum operating systems Windows 2000

See Also

About 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.

#48
erpdude8

erpdude8

    MSFN Master

  • Member
  • PipPipPipPipPipPipPipPip
  • 2,139 posts

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?

#49
soporific

soporific

    Friend of MSFN

  • Member
  • PipPipPipPipPip
  • 705 posts

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?

#50
eidenk

eidenk

    MSFN Addict

  • Member
  • PipPipPipPipPipPipPip
  • 1,527 posts
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 off
regedit /e Get.txt "HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"
TFIND /e "HideFileExt" "dword:00000001" GET.txt > RESULT.TXT
IF ERRORLEVEL   1 GOTO :ERROR1
IF ERRORLEVEL   0 GOTO :ERROR0
:ERROR1
Regedit /s Show.reg
GOTO :END
:ERROR0
Regedit /s Hide.reg
GOTO :END
:END
Del *.txt
cls

For 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.zip

Edit : Oops I just see that I have been off-topic as this is the thread about inf files.

Edited by eidenk, 06 May 2007 - 08:02 AM.

Asus A8V Deluxe - Athlon 64 FX-55 2.6Ghz - 1GB DDRAM 400 - Windows ME (IE 5.5 SP2 Shell) + KernelEx 4.0 and Revolutions Pack 10




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users



How to remove advertisement from MSFN