• Announcements

    • xper

      MSFN Sponsorship and AdBlockers!   07/10/2016

      Dear members, MSFN is made available via subscriptions, donations and advertising revenue. The use of ad-blocking software hurts the site. Please disable ad-blocking software or set an exception for MSFN. Alternatively, become a site sponsor and ads will be disabled automatically and by subscribing you get other sponsor benefits.
MadBoy

Drivers Instalation in Post-Install stage (New Method)

620 posts in this topic

New version is out.....

Changelog for 0.3.6

- Added REMOVABLE drives to be autodetected (you can use it instead of CDROM or drive letter)

- Added function that will create hardware.ini automagically if there is no hardware.ini present (usefull ;p)

- Added option that opens Device Manager while devices are being removed/detected.

- Added option to use either RegistryDevicePath or SetupCopyOemInf by pyron

Would be nice if someone would give his opinion about this, especially about Driver Signing. Couldn't realy found good solution.

Thanx, very nice of you to integrate setupcopyoeminf!

0

Share this post


Link to post
Share on other sites

Np, just report errors ;) New version is there. Little mistake on my side ;/ And can anyone report problem with redetection of devices? I mean like you had to do it manually in device manager to see the process started?

Changelog for 0.3.7

- Fixed multiple Device Manager instances being started

0

Share this post


Link to post
Share on other sites

Just to keep you guys posted.. i decided to add some screenshot. Not best quality but will give you *HINT* on new features that will be implemented in newest version.

post-44662-1144686725_thumb.jpg

New features:

- Full support for 7zip/Rar packed drivers

- Optional backup of c:\Windows\Inf directory before applying drivers

- New look

- Ability to configure .ini file thru GUI (not realy sure i need it but i'll try to implement it if i get time ;p)

- Possibility to copy drivers to for example C:\Drivers for later use (a must to set when using packed_drivers)

- Optional output to log_file (usefull for debugging)

- Optional output_option = Full/Simple - with Full mode on 99% of what's happening including output from external programs will be placed in log. (usefull for debugging but might slow down program a lot)

- Information if Windows require reboot to use drivers or not

- Automatic or Manual start (by pressing button).

- Auto autorun file creator for easy deployment on CD.

Suggestions are welcome as i haven't done everything yet so i can change things. Later on it will be much harder (althought with log window instead of preset GUI it's much easier to change things.

Hope you guys will like the changes in new version. Hopefully out sometime soon.

Edited by MadBoy
0

Share this post


Link to post
Share on other sites

The part about removal of unkown devices is kind of limited. How about i had a driver that was installed but had a ? mark or another driver that had the wrong driver installed. The fact that it resolves unknown devices is great, but usually thats not the case as windows has the drivers for that device already.

0

Share this post


Link to post
Share on other sites

So is this project still alive? :)

I could use this functionality in our corporate upgrade project.

Basically I'm at the point that after the first logon by the user (post Win2k -> XP Pro upgrade finishes), on several types of our HW, the NIC (hardwire and wireless) were not detected properly and are listed as unknown devices. I've been able to prove, via manual method, that uninstalling/removing the unknown devices and doing a new hardware scan will then detect the devices and pick up the driver from the C:\Windows\NLDRV\001 (or 002) folder (I've used nLite to integrate the drivers, works fine). For some reason these drivers are not sensed or found during the device detection phase. :(

Remember, these are upgrades, not clean installs... Clean installs with the same source set created via nLite works right completely, all drivers found and installed correctly. :huh:

So, I need a way to have the upgrade finish installing the right HW drivers...

The basic thought is to:

1. Have a script/batch file fire off from a RunOnce key (which I can't get to work either with an upgrade, but that's another story)

2. Check the registry to ensure the right DevicePath is set or force it to the desired paths (I have this working with a command in a script)

3. Remove all unknown devices (don't know for sure how to do this, but maybe "devcon -remove =Unknown" might work ?? )

4. Re-scan HW to detect the devices and install the right driver (again, I think "devcon rescan" ?? )

5. Reboot the PC

So, anyone out there with some insight on doing this?

0

Share this post


Link to post
Share on other sites

this is a great looking app, i think this will come in handy,, keep up the good work

0

Share this post


Link to post
Share on other sites

Great app, can't wait for next release. Any idea when you might have next vers ready?

Edited by qwerty009
0

Share this post


Link to post
Share on other sites

The project still alive although i kinda stopped developing last few weeks/months due to enormous time i had to spend on other things. It's kinda ready just one little bug that makes the program crash + i need to fix/add minor things but that can be done later on. I kinda stopped developing it due to hardly any interest from ppl (you know, when it's free and you don't see ppl wanting that you don't do it ;)). Anyway i plan to release it since i noticed few ppl want it so it will come.

@Bashrat:

problem id column is what Device Manager states as device error code. When you go to devices that are unknown or with problems there's always a number next to error that it states. The error list can be found here. Only some "errors" are fixable by just removing device from device manager and are drivers related. Other problems usually are more serious problems that shouldn't and won't be solved just by device removal. But for maybe "future" features i added it to show the problem id number.

@LDST - my program if it would be ready and fully working can do that for you ;p devcon -remove =Unknown is one thing but it sometimes doesn't work as the device may have been marked as "problematic" and not realy unknown. I solved it by doing a lot of reasearch on how devcon works and what changes. So my program usually check for that "problem id" that i explained to bashrat and when it founds the right codes (only 2-3 of them are drivers related) it takes device id and removes them. Then devcon rescan and woila ;)

xboxhaxorz - my first version was only looking for Unknown devices indeed. Problem with it is that after first devices removal they are no longer marked unknown. Also like you stated some device have just drivers problem. Well the new version works diffrently as i stated in this post.

I'll try to release 0.4.* version during this week or so.

Chears!

0

Share this post


Link to post
Share on other sites

New version out. A lot of changes including hardware.ini so read first post carefully. Ideas, suggestions, bugs are welcome :P

0

Share this post


Link to post
Share on other sites

am using it but the add hardware wizard things comes up wheer u have to browse for the location of the drivers..

is that normal.. doesnt this program autocmatically scan the folder we define

0

Share this post


Link to post
Share on other sites

Yeah, i encountred this problem several times too. Usually it happens when there is more then one driver on CD/Directories that matches the criteria. In cases where things weren't doubled up the Wizard didnt come up.

0

Share this post


Link to post
Share on other sites

umm thast a bumer.. hope this can be fixed.... i dont have copies of the same driver in the DIR.. but many driversfrom the same company.. i think it shud be able to pick up the appropriate driver automatically

Edited by Avneet
0

Share this post


Link to post
Share on other sites

Well it's not realy in power of my program. It's more like windows behaviour. What can be done is to check if there are registry entries that could disable that behaviour or eventually implement, what in autoit3 shouldn't be problem automatic 'click' next next next :) so user interaction wouldn't be required. I'll have to look at it. I don't realy want to use 'screen interaction' as this won't be 'nice hack'. It will be visible for user which makes the program a bit unproffesional, but it also might be the only way :) I've seen some drivers getting installed that way, like Toshiba bluetooth which was using similar way to interact with windows questions, but it was ugly to me.

I'll try to see how to fix problem, but i lack time latly since i am in the middle of changing jobs and i have other responsibilities now.

0

Share this post


Link to post
Share on other sites

Release 0.4.4 is out. Please test it as it should fix the wizard problem that popped out even thou it wasn't nessecary. So please let me know.

Possible changes in next versions:

- Better handling of removed devices. Especially those that require reboot to work.

Changelog for 0.4.4

- Possibly fixed problem with Wizard poping-out when not nessecary. Need Feedback so lemme know.

- Completly new Plug & Play redetection handling (thru DLLCALL) - tnx to AUTOIT Forum.

0

Share this post


Link to post
Share on other sites

Keep up the good work.

I will try it later to see if it can solve an issue i have with MultiPortSerial PCI board. Board itself is installed without problems but i have to accept the installation of each of the 4 COM ports. Drivers for both PCI board and COM ports are digitally signed.

Edited by Bilou_Gateux
0

Share this post


Link to post
Share on other sites

Thanks,

i got msg from one of the users that the pop-up wizard in his case still pops up. It's weird. I tested it on Fujitsu-Siemens S7010 with like 7 drivers not installed and only Bluetooth didn't installed itself (but with BT there's some problem that even bigger companies can't realy solve as Microsoft doesn't sing it at all). I want the "manual" use to work perfect so i can just work on unattended mode so it can be used with switches and so it can be used easly in some advanced configuration.

I was thinking about using autoit functionality to just press buttons/navigate mouse etc so unsigned drivers can be taken care also with it (and eventually wizards if any comes up). I'm not sure it's good idea thou. Maybe someone has better or thinks it's a good one?

0

Share this post


Link to post
Share on other sites

Nice job, madboy.

hint: mayby you could ad in a rescan of the vgacard as they often are installed with the microsoft drivers, and probably beter drivers are in the drivers dir.

0

Share this post


Link to post
Share on other sites

Adding Remove & Rescan just for graphic card is not an easy task, well codewise it's not so bad but i would have to implement searching procedure for all graphic cards. So i would have to have their Device ID. I guess there are like 32+ graphic cards which means having my program scanning thru every device id and trying to match it. Then when matched remove it. And here starts the hard part, after removal you rescan for p&p, but from now it's mostly Windows job to catch the right driver and i guess it would pickup the one that it finds first ? :) Of course i could probably reset the path for searching for drivers so it wouldn't search in C:\Windows\System32 but most of the time it would be preety stupid idea on my part. My program isn't realy typical for use at home where usually ppl have great graphic cards and new drivers every few weeks/months. It's mostly build for IT Department use when they have a lot of hardware, diffrent computers and usually if some drivers work they leave it like that. So they can prepare CD or DVD or USB-PEN (fastest solution if u ask me) with drivers they have for each laptop/computer and they just use it. Usually those computers are supposed to work so ppl can "WORK", not play games or so ;) That's why that request is a bit questionable ;) Also preparing drivers, testing and using my program just once a year isn't realy worth the time you have to put in it. While at IT Dept you use it daily putting some work into it will shortly bring effects. Hope you understand.

If you would realy need it thou i can give you hints how to achieve it. But i realy don't see the purpose of making that addon :)

What i want to add is so the program would 'check' if removed hardware needs reboot to apply drivers or not. That and few other things i want to add. Just a bit lack of time and doing other programs for myself.

0

Share this post


Link to post
Share on other sites

:( need some help with "drives packed" mothed

I am testing version 0.4.4 functional with Bashrat Driver Packs in network drive, but somehow after unpacks, c:\drivers always empty

thanks!

hare is setting of hardware.ini

Start=Manual

Mode=Standard

Drivers_drive=Z

Drivers_dir=\DriverPacks

Device_manager=On

Method=RegistryDevicePath

Logging_to_file=Yes

Logging_option=Advanced

Drivers_Packed=7zip

Copy_drivers=Yes

Copy_where=C:\Drivers

Delete_drivers=No

Create_backup=Yes

Leave_registry_entries=No

___________________________

network drive

z:\DriverPacks\hardware.exe

z:\DriverPacks\hardware.ini

z:\DriverPacks\DP_Graphics_A_wnt5_x86-32_608.7z

z:\DriverPacks\DP_Graphics_B_wnt5_x86-32_603.7z

z:\DriverPacks\DP_Graphics_C_wnt5_x86-32_603.7z

_________________________________

hardware.log

[08:08:44] - =================== Log Start: ws0001

[08:08:44] - Starting program on ws0001.

[08:08:44] - Detecting Windows version - Windows XP x32

[08:08:44] - Checking for drivers directory existance.

[08:08:44] - Drivers directory (Z:\DriverPacks) exist.

[08:08:44] - Detecting number of devices in system.

[08:08:44] - Found 106 devices of which 3 have problems.

[08:08:44] - Manual start used - Waiting for orders.

[08:08:46] - Checking for directory where drivers will be copied.

[08:08:46] - Directory (C:\Drivers) already exists. Using it.

[08:08:46] - Searching for 7zip archives in Z:\DriverPacks

[08:08:47] - Unpacking drivers from Z:\DriverPacks\DP_Graphics_A_wnt5_x86-32_608.7z

[08:08:48] - Unpacking drivers from Z:\DriverPacks\DP_Graphics_B_wnt5_x86-32_603.7z

[08:08:49] - Unpacking drivers from Z:\DriverPacks\DP_Graphics_C_wnt5_x86-32_603.7z

[08:08:55] - Unpacking completed successfully.

[08:08:55] - Backup of drivers was started. Please wait!

[08:09:10] - Backup of drivers is done.

[08:09:10] - Setting Driver signing to OFF.

[08:09:10] - Setting path into registry using RegistryDevicePath method.

[08:09:10] - Drivers path was set successfully into registry.

[08:09:10] - Removing unknown hardware from system.

[08:09:10] - Unknown devices were removed successfully.

[08:09:10] - Starting Device Manager.

[08:09:10] - Forcing system to detect Plug & Play Devices.

[08:09:12] - System is now detecting and installing drivers for your hardware. Wait!

[08:10:07] - Setting Driver signing to ON.

[08:10:07] - Reseting registry DevicePath to default.

[08:10:08] - =================== Log End: ws0001

0

Share this post


Link to post
Share on other sites

Weird, i reuploaded hardware_0.4.4 but it doesn't seems to be any diffrent. Also i just set this, and tested with some driver packs. I guess i could upload some new 7zip version. Maybe new driver packs are packed diffrently but i very much doubt it. Try my settings but yours look okey and shouldn't need to be changed. Also i hope you have full rights to C: drive and that directory C:\Drivers in your case doesn't exists or exists and is writeable? Ah, and check if 7z.exe can be found in some temp directory in your Documents and settings? My program on start unpacks 7z.exe to temp dir and uses it to unpack. If program still won't act like it should i can add some debug MsgBoxes so we can check what's wrong in your case, of course if you're up to some testing :)

[iNFO]

Start=Manual

Mode=Standard

Drivers_drive=C

Drivers_dir=\Test

Device_manager=On

Method=RegistryDevicePath

Logging_to_file=Yes

Logging_option=Advanced

Drivers_Packed=7zip

Copy_drivers=Yes

Copy_where=C:\DriversTest

Delete_drivers=No

Create_backup=No

[21:34:28] - =================== Log Start: MYCOMP

[21:34:28] - Starting program on MYCOMP.

[21:34:28] - Detecting Windows version - Windows XP x32

[21:34:28] - Checking for drivers directory existance.

[21:34:28] - Drivers directory (C:\Test) exist.

[21:34:28] - Detecting number of devices in system.

[21:34:29] - Found 140 devices without any problems.

[21:34:29] - Manual start used - Waiting for orders.

[21:34:30] - All devices have drivers. There's no need to start program.

[21:34:30] - Checking for directory where drivers will be copied.

[21:34:30] - Directory (C:\DriversTest) already exists. Using it.

[21:34:30] - Searching for 7zip archives in C:\Test

[21:34:30] - Unpacking drivers from C:\Test\DP_Chipset_wnt5_x86-32_605.7z

[21:34:37] - Unpacking drivers from C:\Test\DP_Graphics_B_wnt5_x86-32_603.7z

[21:35:55] - Unpacking drivers from C:\Test\DP_Graphics_C_wnt5_x86-32_603.7z

[21:36:35] - Unpacking drivers from C:\Test\DP_LAN_wnt5_x86-32_6051.7z

[21:36:58] - Unpacking drivers from C:\Test\DP_MassStorage_wnt5_x86-32_6031.7z

[21:37:20] - Setting Driver signing to OFF.

[21:37:20] - Setting path into registry using RegistryDevicePath method.

[21:37:20] - Added to registry: C:\DriversTest\D\C\A

[21:37:20] - Added to registry: C:\DriversTest\D\C\AM\1

[21:37:20] - Added to registry: C:\DriversTest\D\C\AM\2

[21:37:20] - Added to registry: C:\DriversTest\D\C\AM\3

etc

0

Share this post


Link to post
Share on other sites

Thank you for reply :D i found the problem: I copy your *. ini file it still not taking any action, even not Zip the c:\windows\inf\* folder, so i was replace your 7z.exe v.4.41 to Barshrat Driver Packs v.4.26 before click "Remove and Rescan" it worked :thumbup

but after unpack in c:\driverpacks\d\... it won't auto searching hard drive folder. (of couse , I login as administrator for testing)

i am not sure "registry" been added, i try to search "C:\DriversTest" key word in registry it don't found.

hardware.log

........

[02:30:54] - Directory (C:\DriversTest) created successfully.

[02:30:54] - Searching for 7zip archives in C:\Test

........

[02:32:47] - Unpacking drivers from C:\Test\DP_Sound_B_wnt5_x86-32_606.7z

[02:33:12] - Unpacking drivers from C:\Test\DP_WLAN_wnt5_x86-32_605.7z

[02:33:35] - Unpacking completed successfully.

[02:33:36] - Setting Driver signing to OFF.

[02:33:36] - Setting path into registry using RegistryDevicePath method.

[02:33:37] - Drivers path was set successfully into registry.

[02:33:37] - Removing unknown hardware from system.

[02:33:38] - Advanced Output: PCI\VEN_8086&DEV_1051&SUBSYS_10518086&REV_02\4&1F7DBC9F&0&40F0: Removed

[02:33:38] - Advanced Output: 1 device(s) removed.

[02:33:38] - Advanced Output: PCI\VEN_8086&DEV_1051&SUBSYS_10518086&REV_02\4&1F7DBC9F&0&40F0: Removed

...

...

[02:33:39] - Unknown devices were removed successfully.

[02:33:39] - Starting Device Manager.

[02:33:39] - Forcing system to detect Plug & Play Devices.

[02:33:50] - System is now detecting and installing drivers for your hardware. Wait!

Edited by ty628659
0

Share this post


Link to post
Share on other sites

It's weird. Very weird. I can't reproduce your problem. As i see the times..

[02:32:47] - Unpacking drivers from C:\Test\DP_Sound_B_wnt5_x86-32_606.7z

[02:33:12] - Unpacking drivers from C:\Test\DP_WLAN_wnt5_x86-32_605.7z

drivers are being unpacked. But since RegistryDevicePath info doesn't "give" output what dirs are added to registry it seems like it doesn't finds the unpacked drivers in C:\DriversTest. Can you check if those were unpackaced successfully into C:\DriversTest?

[02:33:36] - Setting path into registry using RegistryDevicePath method.

[02:33:37] - Drivers path was set successfully into registry.

Rest seems to be working normal. Unknown devices are removed without problem.

Btw do you get the 'DUPA' msgbox before Backup of drivers happens? Is the path to 7z.exe correct?

0

Share this post


Link to post
Share on other sites

Can you check if those were unpackaced successfully into C:\DriversTest?

today i clean install xp home w/sp2 from MS-CD, it does same problem as yesterday. I have to replace 7z.exe to v.4.26 then unpackaced successfully into C:\DriversTest with all sub. but registry it seems like it doesn't added any thing!

Btw do you get the 'DUPA' msgbox before Backup of drivers happens? Is the path to 7z.exe correct?

if set Create_backup=Yes

dupa msgbox

c:\temp\7z.exe a -tzip "C:\backup_drivers-8/20/2006_7_21_53_PM.zip" "C:\windows\inf\*"

7z.exe (v.4.41) won't taking any action not even create a empty folder, with v.4.26 successfully backup to C:\backup_drivers-8\20\2006_7_21_53_PM.zip

send me debug version, i love to help you out

Edited by ty628659
0

Share this post


Link to post
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.