(Simple method of integrating SATA/RAID drivers could be found here.)
First step: preparing driver binaries.
All driver binaries should be in extracted format as if they are used for installation through OEM folder structure or like in Bashrat the Sneaky's drivers packs.
Most drivers that come in one EXE file could be extracted with archievers like WinRar. Or you can use Universal Extractor.
For finding right files among all extracted binaries and getting rid of some garbage I recommend using simple and great tool - Driver Compressor (but you have to extract cabbed files again after using it).
Second step: creating folders structure.
Create folder HFEXPERT in HFSLIP directory, go inside this folder and create the folder DRIVERCAB.
Place all your extracted driver files into DRIVERCAB (for later updates it's better to place drivers in separate subfolders like DRIVECAB\Modem, DRIVECAB\Sound, DRIVECAB\Video, etc.).
What happens if there are files with the same names? You can rename them. I even advise you to rename INF according to the driver type: MYMODEM.INF, MYSOUND.INF, MYVIDEO.INF, etc. But if you rename other files from the packages you should try to rename all entries refferencing this file in an appropriate installation INF. This can be usefull for troubleshouting later problems with replacing some files with doublicated names in DRIVER.CAB too.
Third step: editing INF files.
We came to the most difficult part as it needs some manuall work. You have to open each INF in DRIVERCAB folder and search for the section [SourceDisksNames] or [SourceDisksNames.x86] and inseart right after it and before any line this code:
[SourceDisksNames.x86] 1 = %W2Kcd%,driver.cab,,"I386"(For troubleshouting purposes I'd recommend change %W2Kcd% to drivers nature like VIDEO, SOUND, MODEM - in this case if any error occure you can see clearly which driver has a problem.)
Search for the section [SourceDisksFiles] and make sure all entries have '= 1' in it like:
[SourceDisksFiles] file1.sys=1 file2.dll=1Comment:
Some INF has a few SourceDisksFiles sections and you have to change them all or add all files to the one section with '= 1' part.
I confirm this method works with Windows 2000 Professional and FDV's fileset (maybe it needs Windows Files Protection Mode off) for a least a douzen drivers I used. I have not tried to follow it on other OS and without FDV's modified DLL yet. If you tryed this method with other OS and without WFP off please let us know your results.
Issues I had with this method (IMHO all is about of not "well-formed" installation INF files):
- Intel graphic driver asks for distribution CD but installs fine without providing it.
- My CDMA driver doesn't install (asks for CD too).
Edited by Oleg_II, 31 October 2006 - 09:49 PM.