Jump to content

repackaging driver.cab


Recommended Posts

I would like to know how to replace a driver in the driver.cab file. I have an Adaptec RAID card that already has a driver in the driver.cab file but I would like to replace that with the updated driver that has the same name which is dpti20.sys. Could somebody please give me some instructions to extract driver.cab, replace the file, and then repackage driver.cab.

Any help would be greatly appreciated.

Link to comment
Share on other sites


in your winnt.sif, if you put it in the OemPnPDriversPath section and add the DriverSigningPolicy=Ignore entry, windows will automatically select the best driver (out of the original, and the one you provide)

OemPnPDriversPath="Drivers\Adaptec"DriverSigningPolicy=Ignore

the "Drivers\Adaptec" folder is stored under $OEM$\$1

the only problem is, this will only work with UnattendedInstall=YES, otherwise it will ignore the drivers path and won't find your updated driver

Link to comment
Share on other sites

I wish there was a way to archive the files being used in OEMPnPDriversPath. I've got a section of monitor drivers that's almost 1100 files (yet only 3.5MB). I haven't tried it yet, but I have this sinking feeling that copying all those files to the hard drive is going to take a year.

Link to comment
Share on other sites

But if you could compress it, it would be alot smaller...

Yeah, I can get almost a 10:1 compression ratio on the monitor drivers (not surprising given that all they are are INF and ICM files). But yeah, it's nearly 3000 files now :rolleyes: (and a whopping 18MB :D). They compress down into a solid RAR archive of 1.91MB :)

Link to comment
Share on other sites

Try this, download the batch files from Jdeboeck's site:

http://jdeboeck.msfnhosting.com/

Run "Drivers before you begin" to unpack the drivers cab

Replace the drivers you want to replace

Run "Drivers finishing off" to pack the driver files back to one huge cab file

Delete Drivers subdirectory from I386 directory as this not needed anymore.

This also integrates the sp1.cab to the drivers.cab and reduce size of the drivers. This only works if you have the same driver/driver names. I tried adding other drivers but it does not get recognized, maybe there is a list or a file that needs to updated if you want to add new drivers.

Link to comment
Share on other sites

you can replace most of your $OEM$ structure with a self-extracting archive

if you make a self-extracting SFX RAR archive (or zip if you prefer) and run that as the DetachedProgram it will do what you want! :)

obviously, OEMPreinstall=YES must be set or it won't even bother looking at your OEMPnPDriversPath

Compress your entire DRIVERS directory and Place your SFX archive into $OEM$\$1

winnt.sif

[unattended]OEMPreinstall=YESOEMPnPDriversPath="Drivers\001Mon;Drivers\002Mon;etc"DriverSigningPolicy=Ignore
[GuiUnattended]DetachedProgram="%systemdrive%\SFX.exe"Arguments="extract %systemdrive%"

I don't know the command switches to extract an SFX archive to a directory, so just replace the ARGUMENTS line with the correct switch(s)...

This will run the self-extracting archive while GUI mode setup is active before it searches for drivers...

Link to comment
Share on other sites

At least with a RAR archive, you can tell it to extract silently when creating the EXE, no switches needed.

I have one question. I was under the impression that driver installation was the very first part of the GUI part of setup. How does this detached program get run prior to hardware installation?

Link to comment
Share on other sites

Aww, I'm only kidding. :)

Hmm, I'm not sure how you would go about doing the entire $oem$ directory. Wouldn't you have to make separate archives inside of each folder that resides in $oem$?

Link to comment
Share on other sites

err... i meant the entire $OEM$\$1 directory :rolleyes: like drivers, installs, sysprep, cleanup.cmd etc etc (my $1 has craploads of stuff in it, i think its 250mb or more)

the others you would have to place in seperate archives too correct jrzycrim :D like $$ and $Progs etc...

:)

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...