a06lp Posted August 7, 2005 Author Posted August 7, 2005 (edited) [nevermind...] Edited August 12, 2005 by a06lp
evilvoice Posted August 10, 2005 Posted August 10, 2005 couldnt we include support for 7zip archives?
evilvoice Posted August 11, 2005 Posted August 11, 2005 actually, id much rather have it all contained in the autoit script...mainly because of the "RunWait" command...the problem with presetup.cmd is that windows setup DOES NOT pause when executing it, so you could potentially end up with only half the drivers extracted when windows hunts for drivers (at least I heard that was the biggest problem)
Acheron Posted August 12, 2005 Posted August 12, 2005 actually, id much rather have it all contained in the autoit script...mainly because of the "RunWait" command...the problem with presetup.cmd is that windows setup DOES NOT pause when executing it, so you could potentially end up with only half the drivers extracted when windows hunts for drivers (at least I heard that was the biggest problem)<{POST_SNAPBACK}>You can't let wait the Windows Setup with AutoIt. However you can force the Windows Setup to idle-mode for the time being.Reason for me to use AutoIt is the ProcessClose function. When using nLite sometimes Taskkill would fail if you have removed lot's of components
evilvoice Posted August 13, 2005 Posted August 13, 2005 (edited) what do you mean by idle-mode? does that mean that if I inclue extracting the 7zip archive using Run.Wait it will idle at DetachedProgram?Also, why the need to input the cd when using this method for any devices that were not connected during install...is it because of a registry setting? Im just asking if it is something we can change because I copy the driver directory from the cd to hard drive just for the purpose of not needing the cd again. Edited August 13, 2005 by evilvoice
Nologic Posted August 13, 2005 Posted August 13, 2005 Different write up for the script.; Files To Use$FILE_0 = "setup.exe"$FILE_1 = "WatchDriverSigningPolicy.exe"$FILE_2 = "SetupCopyOEMInf.exe "$CD = DriveGetDrive( "CDROM" ); Check DrivesFor $I = 1 to $CD[0] If FileExists( $CD[$I] & "\win51ip.SP2" ) Then $iDrive = $CD[$I] & "\$oem$\"Next; Setup = IdleProcessSetPriority ( $FILE_0 , 0 ); Process DriversRun ( $iDrive & $FILE_1 )ProcessWait ( $FILE_1 )RunWait ( $iDrive & $FILE_2 & $iDrive & "Drivers" )ProcessClose ( $FILE_1 ); Setup = NormalProcessSetPriority ( $FILE_0 , 2 ); Delete FileFileDelete ( @SystemDir & "\driver.au3" )Not sure if the ProcessWait is really needed tho...then again haven't tested this method yet ether.
Acheron Posted August 13, 2005 Posted August 13, 2005 (edited) If you want all drivers get installed from HDD you have only to modify the SetupCopyOEMInf.exe command line.For example you want the Drivers to be located in \Windows\Drivers you can use this code:driver.au3$CD = DriveGetDrive("CDROM")For $I=1 to Number($CD[0])$pa = $CD[$I] & "\win51ip.SP2" If FileExists($pa) Then $instDrv=$CD[$I] EndifNextProcessSetPriority ( "setup.exe", 0)Run($instDrv & "\$oem$\WatchDriverSigningPolicy.exe")ProcessWait("WatchDriverSigningPolicy.exe")RunWait($instDrv & "\$oem$\SetupCopyOEMInf.exe " & @WindowsDir & "\Drivers")ProcessClose("WatchDriverSigningPolicy.exe")ProcessSetPriority ( "setup.exe", 2)FileDelete(@SystemDir & "\driver.au3")Where in $oem$\$$\System32:autoit3.exedriver.au3Following files in $oem$SetupCopyOEMInf.exeWatchDriverSigningPolicy.exeAnd in $oem$\$$\drivers your driver files Edited August 13, 2005 by hp38guser
evilvoice Posted August 13, 2005 Posted August 13, 2005 so why the need for a06lp's last note in the first post? I assumed it was something else, like a registry problem, or something, but if using setupcopyoeminf.exe on the windows\source\drivers dir will make it so windows does not prompt for the cd when installing NEW devices, then Ill use that method, just thought it was more in depth.
evilvoice Posted August 26, 2005 Posted August 26, 2005 still havent tried it out yet, but i do think this should be stickied or merged...or something to keep it at the top...a bunch of people say this method works better than the previous version...so maybe the old should be replaced with the new?
a06lp Posted September 1, 2005 Author Posted September 1, 2005 Just thought I'd point something out...The OTHER Drivers-from-CD method didn't work with RyanVM's Update Packs.However, this method, as outlined in the first post, is tested, and WORKS, with v1.3.1 of his pack. Enjoy!
Oleg_II Posted September 4, 2005 Posted September 4, 2005 Does this method work for Windows 2000 Pro? I tried to follow instructions on the first page, change only one thing in Drivers.au3: win51ip.SP2 to cdrom_ip.5. But it didn't work for me.In old method there is a possibility to compress drivers, place them on CD and then uncompress from CD to the system drive installing from there. Is it possible in new method? Sorry I'm not familiar with AutoIt.Regards,Oleg 2
Afterdawn Posted September 5, 2005 Posted September 5, 2005 (edited) Great work, all of you Will now test if this works from USB drives as well, by means of the DriveGetDrive("ALL") instruction.Also, Bashrat, why don't you make this one a sticky and "un-sticky" the "Unlimited number of drivers + keeping the drivers." thread since that one is outdated. Edited September 5, 2005 by Afterdawn
Afterdawn Posted September 5, 2005 Posted September 5, 2005 (edited) Yes yes it works like a charm! Now I've got all my applications / hotfixes, tweaks ánd all my drivers on my 2GB USB flashdrive! Only when a new Service Pack is released I will need to update my CD!Thanks to all of you!Here is my modified auto-it script file btw:$array = DriveGetDrive("ALL")For $item=1 to Number($array[0]) $srcPath = $array[$item] & "\drivers" If FileExists($srcPath) Then ProcessSetPriority("setup.exe", 0) Run($srcPath & "\WatchDriverSigningPolicy.exe") ProcessWait("WatchDriverSigningPolicy.exe") RunWait($srcPath & "\SetupCopyOEMInf.exe " & $srcPath) ProcessClose("WatchDriverSigningPolicy.exe") ProcessSetPriority("setup.exe", 2) EndifNextFileDelete(@WindowsDir & "\t39.au3")Note that there are a few things different here:- All used drive letters will be searched for a directory called \drivers- It assumes that WatchDriverSigningPolicy.exe and SetupCopyOEMInf.exe are in this directory- These two files are not deleted, only the auto-it script file (which in my case is called t39.au3 in the Windows directory)One more thing: When you're installing Windows XP and you are at the partitioning part of the Setup (the only part which isn't unattended in my case), you should be able to see your flashdrive already. This way you can check whether it shall be accessible at the t-39 minute stage. The used filesystem (FAT or NTFS) isn't of any importance. Edited September 6, 2005 by Afterdawn
a06lp Posted September 5, 2005 Author Posted September 5, 2005 glad to hear it works. one of the great things about the autoit aspect of this method is that its so customizable.enjoy!
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now