MSFN Forum: SOLVED: drivers from CD - MSFN Forum

Jump to content



  • 24 Pages +
  • 1
  • 2
  • 3
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

SOLVED: drivers from CD possible even without winnt.sif! Rate Topic: ***** 1 Votes

#11 User is offline   Pyron 

  • Junior
  • Pip
  • Group: Members
  • Posts: 84
  • Joined: 04-December 03

Posted 26 December 2003 - 12:35 PM

SetDevicePath.exe scans a directory recursively for subdirectories and adds all found
subdirectories to the registry. So you can sort them however you like, but they have
to reside in a single root-directory.

So you can even have this kind of structure:

\drivers\chipset\sis
\drivers\chipset\via
\drivers\graphics\nvidia
\drivers\graphics\ati
\drivers\sound\creative
...

SetDevicePath.exe \drivers
will suffice.

But you cannot have two or more drivers directories like this
SetDevicePath.exe \drivers1
SetDevicePath.exe \drivers2
as the second call will overwrite the registry-entries made by
the first!

--
Pyron


#12 User is offline   bucketbuster 

  • Senior Member
  • PipPipPipPip
  • Group: Members
  • Posts: 649
  • Joined: 16-November 03

Posted 30 December 2003 - 04:17 PM

Hi,

what should I do with the PnPDriversPath entry in winnt.sif???

Should I leave it blank or.....??

#13 User is offline   Alanoll 

  • CODE tags people, CODE tags!
  • Group: Patrons
  • Posts: 5,496
  • Joined: 25-September 03

Posted 30 December 2003 - 06:22 PM

bucketbuster, on Dec 30 2003, 04:17 PM, said:

Hi,

what should I do with the PnPDriversPath entry in winnt.sif???

Should I leave it blank or.....??

if you use the Winnt.sif, it will probally overwrite those settings.
but then again, why would you use the PNPDriversPath with this.

in winnt.sif you need to have the drivers and whatnot copied to the harddrive using the $OEM$ folder.
this method makes it so you don't copy your drivers from the CD. Making the path in winnt.sif mute.

#14 User is offline   eirogge 

  • www.eirogge.de
  • PipPip
  • Group: Members
  • Posts: 218
  • Joined: 07-February 04

Posted 18 March 2004 - 11:56 AM

Thank you very much for this effort in unattended driver installation! :-)

I've got only one problem: it does not install unsigned drivers respectively my ATI Catalyst 4.3 with a patched and non-signed ati2mtag.sys.

These are the last two lines of my presetup.cmd :

%CDDRIVE%\$OEM$\SetDevicePath.exe %CDDRIVE%\$OEM$\Treiber
start %CDDRIVE%\$OEM$\WatchDriverSigningPolicy.exe


I changed the folders to fit my folder structure. Are the paths hardcoded in the exe files so it may be caused by this?

#15 User is offline   Bilou_Gateux 

  • Powered by Windows Embedded
  • PipPipPipPipPip
  • Group: Members
  • Posts: 766
  • Joined: 03-January 04

Posted 21 March 2004 - 04:32 AM

@Bachus

for Windows 2000, i suggest to edit presetup.cmd and change the 2nd line

Quote

rem find cdrom
set tagfile=\WIN51
to

Quote

rem find cdrom
set tagfile=\CDROM_NT.5

because WIN51 file don't exist on Windows 2000 installation CD

@Pyron
Can you detail what exactly changes in the registry with WatchDriverSigningPolicy.exe :

Quote

It installs a notification hook on the "Driver Signing" regkey and changes it back whenever necessary.

because i like to understand what the program do to help solve problems

more information on the BehaviorOnFailedVerify
http://www.tburke.ne...opics/93271.htm
http://www.winguides...splay.php/1298/
http://archives.neohapsis.com/archives/sf/...02-q1/0455.html
for frenchies
http://www.hotline-p...LER/systeme.htm
[URL=http://e.padrixe.free.fr/Optimise_XP_.txt[/URL]

#16 User is offline   Pyron 

  • Junior
  • Pip
  • Group: Members
  • Posts: 84
  • Joined: 04-December 03

Posted 26 March 2004 - 12:29 PM

@Bilou_Gateux:

I simply use RegCreateKeyEx to set the appropriate Keys and RegNotifyChangeKeyValue to "watch" it like this:

(simplified, not working code)

while(1) {
    // Set Key with RegCreateKeyEx here
    // Setting Main Driver Signing Policy under
    //   HKLM\\Software\\Microsoft\\Driver Signing\\Driver Signing Policy = 0
    // Setting User Driver Signing Policy under
    //   HKCU\\Software\\Microsoft\\Driver Signing\\Driver Signing Policy = 0
    // Setting BehaviorOnFailedVerify under
    //   HKCU\\Software\\Policies\\Microsoft\\Windows NT\\Driver Signing\\BehaviorOnFailedVerify = 0

    // Watch the registry key for a change of value.
    RegNotifyChangeKeyValue(HKLM\\Software\\Microsoft\\Driver Signing\\Driver Signing Policy);

    // Wait for an event to occur. (i.e. key has changed)
    WaitForSingleObject(event);
}


I attached the main sourcefile (for VC++6). No big secrets in there...

@eirogge:
Since I found out about this I installed various systems using this method, but occassionally the dialog for the installation of unsigned drivers pops up nevertheless. I have no idea why, but Setup seems to ignore the registry values sometimes. :(

(In the meantime I worked on an unattended installation using AutoIt. Seems to be a bit clumsy but works very reliable.)

--
Pyron

Attached File(s)



#17 User is offline   Alanoll 

  • CODE tags people, CODE tags!
  • Group: Patrons
  • Posts: 5,496
  • Joined: 25-September 03

Posted 26 March 2004 - 03:02 PM

the Driver Policy key is restet when GUI install starts, regardless of what it was set to previously.

unsigned don't get installed becuase of teh "score" they get is lower then any other matches.


why did you modify ati2mag.sys?

#18 User is offline   eirogge 

  • www.eirogge.de
  • PipPip
  • Group: Members
  • Posts: 218
  • Joined: 07-February 04

Posted 30 March 2004 - 12:09 AM

Alanoll, on Mar 26 2004, 11:02 PM, said:

why did you modify ati2mag.sys?

unlocking all 8 pixel pipelines on a radeon 9800se with the radeon 9800pro layout

#19 User is offline   RyanVM 

  • Like a big surly teddy bear.
  • PipPipPipPipPipPipPipPip
  • Group: Members
  • Posts: 2,661
  • Joined: 31-August 03

Posted 05 May 2004 - 08:11 PM

So let me get this right. We're omitting the OEMPnPDriversPath from winnt.sif and are instead running a program which manually sets the path later in installation (and the path can be set to a CD or whatever). It would be a gigantic space and time saver if I could make a self-extracting solid RAR archive will all the driver files in it!

#20 User is offline   RyanVM 

  • Like a big surly teddy bear.
  • PipPipPipPipPipPipPipPip
  • Group: Members
  • Posts: 2,661
  • Joined: 31-August 03

Posted 05 May 2004 - 08:13 PM

Argh, so much information to absorb...:)

#21 User is offline   Alanoll 

  • CODE tags people, CODE tags!
  • Group: Patrons
  • Posts: 5,496
  • Joined: 25-September 03

Posted 05 May 2004 - 09:15 PM

this is true, but if you wanted to save space on your disk, why would you install the drivers from the disk? They'd have to be in an uncompressed form.

And actually the Path is set right when Windows Setup starts (before the GUI part starts) same was when it imported from Winnt.sif


I dunno about time saver? I seems like it'd be easier to have the drivers easily editable on a disk, rather then change the drivers make sure structure is correct, and then recreate the archive.

#22 User is offline   RyanVM 

  • Like a big surly teddy bear.
  • PipPipPipPipPipPipPipPip
  • Group: Members
  • Posts: 2,661
  • Joined: 31-August 03

Posted 05 May 2004 - 09:35 PM

There's two possibilities I'm seeing: First, you could save time by having the drivers install directly from the CD seeing as how they wouldn't need to be copied. Otherwise, you could compress them to save space and have them be extracted, possibly saving time as well since you'd be reading one contiguous file rather than thousands of small ones.

And I don't mind making an archive, I've got a fast computer :). Yes, I would leave them uncompressed on my hard drive.

#23 User is offline   Alanoll 

  • CODE tags people, CODE tags!
  • Group: Patrons
  • Posts: 5,496
  • Joined: 25-September 03

Posted 05 May 2004 - 09:36 PM

this is true....
you would have one file to copy over, but then you'd have to extract it would might take awhile depending on the size (a few minutes really).


so the real question comes down to , Speed vs. Size, as it always does :)

#24 User is offline   RyanVM 

  • Like a big surly teddy bear.
  • PipPipPipPipPipPipPipPip
  • Group: Members
  • Posts: 2,661
  • Joined: 31-August 03

Posted 06 May 2004 - 06:29 AM

Just for the sake of experimenting, I made a solid RAR archive of my Drivers folder. It went from 102MB to 21MB! :)

So how would I make sure it executed before PnP device detection?

And if you did it that way, I could extract it to C:\Drivers and never even need to change my winnt.sif.

#25 User is offline   Alanoll 

  • CODE tags people, CODE tags!
  • Group: Patrons
  • Posts: 5,496
  • Joined: 25-September 03

Posted 06 May 2004 - 06:50 AM

use DetachdProgram

that should get it there before detection begins. I think anywayz...

Or maybe you could use a combined method of this and the rar. Use the setup and presetup.cmd files from this, but only to extract the archive, and then continue the setup.

#26 User is offline   RyanVM 

  • Like a big surly teddy bear.
  • PipPipPipPipPipPipPipPip
  • Group: Members
  • Posts: 2,661
  • Joined: 31-August 03

Posted 06 May 2004 - 07:37 AM

If I understand how DetachedProgram works, it runs it concurrently with windows setup, correct? What has me nervous is that for a large archive, it might take so long to extract the archive that by the time it's done, some hardware will have already been missed. I guess that's where your method comes into play.

#27 User is offline   Bâshrat the Sneaky 

  • aka Wim Leers
  • PipPipPipPipPipPipPipPip
  • Group: Members
  • Posts: 2,214
  • Joined: 29-October 03
  • OS:none specified
  • Country: Country Flag

Posted 06 May 2004 - 11:32 AM

I've been trying to do this too. I've made a SFX archive with WinRAR, which is set up to extract to %systemdrive%\Drivers.

It silently unpacks like this: drivers.exe /S. But it doesn't get unpacked at all when I run it detached by winnt.sif!!!

However, I've noticed again something interesting: when you create a SFX archive you can choose a SFX-module, somewhere in properties.

You can choose between:

-default.sfx
-DOS.sfx
-Win.con.sfx (Windows Console)

The last two, and specificly the last one could be very usefull I think? Could anyone test this, as I'll be in London the next two days? (school trip)

#28 User is offline   RyanVM 

  • Like a big surly teddy bear.
  • PipPipPipPipPipPipPipPip
  • Group: Members
  • Posts: 2,661
  • Joined: 31-August 03

Posted 06 May 2004 - 01:43 PM

By george, it worked like a charm!

And Bashrat, your problem was likely that you didn't put the /S flag in the Arguments string. It doesn't go with the exe. But I used the standard RAR SFX module and had it show me progress and it worked like a charm. No need for flags if you create the SFX archive properly.

XP Setup even waits for it to finish running before it does PnP Device detection! Win-win!

#29 User is offline   Alanoll 

  • CODE tags people, CODE tags!
  • Group: Patrons
  • Posts: 5,496
  • Joined: 25-September 03

Posted 06 May 2004 - 01:59 PM

::marks another on the board for good ideas::

wow, this good idea thing is starting to rack up :)

#30 User is offline   RyanVM 

  • Like a big surly teddy bear.
  • PipPipPipPipPipPipPipPip
  • Group: Members
  • Posts: 2,661
  • Joined: 31-August 03

Posted 07 May 2004 - 07:25 AM

For those using WinRAR to achieve this, this is my method for creating an SFX archive that worked. RAR up the subdirectories within your Drivers folder (I personally do it with the best compression and as a solid archive and it got a 5:1 compression ratio). Make it self extracting, but don't worry about any SFX options for the time being. Once the archive is created, add a comment to the archive (a shortcut to this is Alt+M) with this info in it:
;The comment below contains SFX script commands

Path=%systemdrive%\Drivers
SavePath
Silent=2
Overwrite=1
That will tell it to extract to Drivers on root (in other words, generally C:\Drivers). It will show an extraction progress dialog (so you can verify that it is indeed working. Change Silent=2 to 1 if you want it to be completely hidden. Overwrite=1 tells it to overwrite any files it comes across (not that it'll be an issue if you're doing a clean install).

So now you should have an exe (mine's called Drivers.exe and I'll be using it as an example) with the above comment in it (you can test its functionality too by double clicking and verifying that it extracts how you want it to). Place it in your $1 folder inside $OEM$. In the [GUIUnattended] section of winnt.sif, add the following line:
DetachedProgram="%systemdrive%\Drivers.exe"
Leave your OEMPnPDriversPath settings in winnt.sif the same as if the files were uncompressed on the CD. They will be extracted prior to PnP device detection, so this will not be a problem.

Attached is a picture of what the archive should look like.

Attached File(s)



Share this topic:


  • 24 Pages +
  • 1
  • 2
  • 3
  • Last »
  • 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