MSFN Forum: Drivers compression: is it possible? - MSFN Forum

Jump to content



Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Drivers compression: is it possible? Rate Topic: -----

#1 User is offline   big_gie 

  • Senior Member
  • PipPipPipPip
  • Group: Members
  • Posts: 617
  • Joined: 27-July 03

Posted 07 March 2004 - 10:30 AM

Hi,

I just found that my driver directory is really big... since its only .inf files and others, a 5Mb driver can be compress to a 100kb rar file...

Has anyone have been able to compress their driver directory and still be able to install unattended?

How can it be done?

thanks


#2 User is offline   jdeboeck 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 376
  • Joined: 13-October 03

Posted 08 March 2004 - 10:55 AM

you can save a LOT of space from your drivers, but it can get complicated... for a driver you need the driver INF... that's the one you need in your $OEM$ directory

one easy thing to do is compress your files (except the INF file) and xp setup will expand it, just like it does for any other windows file... this will effectively compress all of your drivers...

makecab driver.sys
makecab driver.dll
... all files except the .INF


up next you can read the .INF files and look for a [sourcedisksfiles] section, only files listed in that section can be needed for the driver, any other file that is not in that section is junk. (note that .CAT files, which make the driver signed, are not really needed, they are in the [version] section if you need it...)

finally if your driver is still to big... you can start trimming your driver... but this is were it gets complicated... Most drivers require only one .SYS file, that's all. Nothing else. Display drivers also require one .DLL file... THIS IS THE ABSOLUTE MINIMUM TO RUN A DRIVER. (opengl, directx, may be additional dll files)

You can delete all additional files, they will most likely be localized resources, coinstallers, control panel applets, plugin property pages (like advanced display props) startup utilities, helper services... Its up to you if you want those.... I don't use them so I remove them from the driver, they use up a lot of memory as well.

When you delete these files you also need to rewrite the driver inf....

EDIT: my OEM drivers come up shy of 5MB, while the original downloads were in excess of 40mb

#3 User is offline   big_gie 

  • Senior Member
  • PipPipPipPip
  • Group: Members
  • Posts: 617
  • Joined: 27-July 03

Posted 08 March 2004 - 04:08 PM

Thanks jdeboeck!

Will I have to change the inf file to point to newly "cabbed" file?

Also, my nvidia (OEM) drivers has plenty of localized help files and others... Can I remove them? (and their reference in the inf?)

For exemple, here is my original NVDM.INF file:

NVDM.INF said:

[SourceDisksFiles]
nv4_mini.sys = 1
nvinstnt.dll = 1
nvsvc32.exe  = 1
nv4_disp.dll = 2
nvoglnt.dll  = 3
nvcpl.dll    = 4
nvmctray.dll = 4
nvcpl.hlp    = 4
nvrsde.dll = 5
nvwrsde.dll  = 5
nvcpde.hlp = 5
nvwcpde.hlp  = 5
nvrses.dll = 5
nvwrses.dll  = 5
nvcpes.hlp = 5
nvwcpes.hlp  = 5

nvrsfr.dll = 5
nvwrsfr.dll  = 5
nvcpfr.hlp = 5
nvwcpfr.hlp  = 5
nvrsit.dll = 5
nvwrsit.dll  = 5
nvcpit.hlp = 5
nvwcpit.hlp  = 5
nvrsja.dll = 5
nvwrsja.dll  = 5
nvcpja.hlp = 5
nvwcpja.hlp  = 5
nvrsko.dll = 5
nvwrsko.dll  = 5
nvcpko.hlp = 5
nvwcpko.hlp  = 5
nvrsptb.dll  = 5
nvwrsptb.dll = 5
nvcpptb.hlp  = 5
nvwcpptb.hlp = 5
nvcpth.hlp = 5
nvwcpth.hlp  = 5
nvrszhc.dll  = 5
nvwrszhc.dll = 5
nvcpzhc.hlp  = 5
nvwcpzhc.hlp = 5
nvrszht.dll  = 5
nvwrszht.dll = 5
nvcpzht.hlp  = 5
nvwcpzht.hlp = 5

nview.dll    = 4
dmcpl.exe    = 4
nvshell.dll  = 4
nvtuicpl.cpl = 4
nwiz.exe  = 4
nviewimg.dll = 4
keystone.exe = 4
generic.tvp  = 4
nvwcplen.hlp = 4


If I delete the red files?

And will I need to change files references from, for exemple, "dmcpl.exe" to "dmcpl.ex_"?

Is there a more powerfull way to comrpess the files? WinRAR can compress as much as twice as makecab...

Thank you very much :)

#4 User is offline   jdeboeck 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 376
  • Joined: 13-October 03

Posted 08 March 2004 - 04:20 PM

I'll rush in an answer now, but look into it later on...

You don't need to change anything if you compress files with makecab... inf installs do it automatically... But it must be makecab, no zip or rar or what have you... the extension wil be .*_ and thats ok, if the driver needs something.SYS, it will expand something.SY_ if its there


you can delete the localized files, but make sure you don't delete the english locale files. Removing them from [sourcedisksfiles] isnt enough though, but it is a good start...

the files will be in another section [SOMETHING.CopyFiles] most likely... now they must be removed from that section as well. Alternatively you can delete taht SOMETHING.CopyFiles from the CopyFiles = statement in the installer for your device...

Just search the inf for a couple of those DLL's.... they'll appear in another section. Clean out that section.. Look for the section's name (as above) and optionally delete the sections name from the CopyFiles statement (as above) (I just said the same thing twice didnt I ?)

All you really need is: nv4_mini.sys, nv4_disp.dll and nv4_disp.inf, these are also the files included with XP... everything can be removed (if you don't need the extended property pages)

#5 User is offline   big_gie 

  • Senior Member
  • PipPipPipPip
  • Group: Members
  • Posts: 617
  • Joined: 27-July 03

Posted 08 March 2004 - 04:33 PM

thanks :)

Original nVidia uncompressed drivers: 33 Mb
Newly cabbed, localization reduced, drivers: 7 Mb

Thank you!! :rolleyes:

#6 User is offline   big_gie 

  • Senior Member
  • PipPipPipPip
  • Group: Members
  • Posts: 617
  • Joined: 27-July 03

Posted 08 March 2004 - 04:36 PM

How about making a rar sfx and installing them silently @ T-12 ?

As anyone did this?

thanks :)

#7 User is offline   jdeboeck 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 376
  • Joined: 13-October 03

Posted 08 March 2004 - 04:42 PM

T-12 is too late for drivers...

silently installing a driver is just copying the inf, so windows can install it next time PNP detects an unknown device...
EDIT: plus the silent install may look for those 'removed files' , we only edited the driver here, not the installshield installer

#8 User is offline   Klaassh 

  • Newbie
  • Group: Members
  • Posts: 43
  • Joined: 28-September 03

Posted 08 March 2004 - 07:26 PM

yeah you can extract at 39min, right before driver detection. Numinous came up with this one, been using it for a while now.
  • First of all make your sfx, I like to use 7zip as you get about an extra 10 to 20% compression over RAR.

  • Place it in $OEM$\$1 eg: cd:\$OEM$\$1\Drivers.exe

  • Now add these 2 lines to yourwinnt.sif under [GuiUnattended] (note: Args are for 7zip exe's, replace if your using RAR)
    DetachedProgram="%systemdrive%\Drivers.exe"
    Arguments="-y /q /r:n"
Other than that all stays the same. You still need to have everything listed in "OemPnPDriversPath="

#9 User is offline   jdeboeck 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 376
  • Joined: 13-October 03

Posted 08 March 2004 - 07:36 PM

okay i said makecab... but theoretically any one of the cab compression method will do... you will need MS' compress.exe instead of makecab.exe though. LZX with maximum compression is really good, not as good as rar or zip... but good enough not to bother with anything else...

PS: And I use detached program to start me up a game of Minesweeper :)

#10 User is offline   big_gie 

  • Senior Member
  • PipPipPipPip
  • Group: Members
  • Posts: 617
  • Joined: 27-July 03

Posted 08 March 2004 - 09:44 PM

jdeboeck, on Mar 9 2004, 02:36 AM, said:

PS: And I use detached program to start me up a game of Minesweeper  :)

you freak! :rolleyes:

I'll try this Klaassh! Thats what I was looking for!! :D

By the way... I've never been able to install 7zip... the program just doesnt run... no error, no extraction of setup... nothing... ever heard of a problem like this??

EDIT: hun ok redownloaded 7zip and it works... nvm :D

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users



All trademarks mentioned on this page are the property of their respective owners
Copyright © 2001 - 2011 msfn.org
Privacy Policy