Jump to content

Drivers Instalation in Post-Install stage (New Method)


MadBoy

Recommended Posts

I progressed a bit further and it's working properly now during the RunOnceEx process. The solution: msxml6.dll was not registered at that point. I've added regsvr32 /s msxml6.dll to the installationscript before executing the drivertool, and it's running perfect now :D

The only annoying thing is the Found New Hardware Wizard which pops up occasionally. I'd like to suppress that Wizard, because it only requires Next and Finish when it's done. I know I can't disable it because it's a fundamental part of the hardware detection (it just doesn't do anything when you temporary rename %WINDIR%\system32\newdev.dll to something else). But as long as that thing is popping up, the unattended installation is never fully unattended. :( Maybe the drivertool can search for this Wizard window and silent pressing Next and Finish?

post-34235-1198086057_thumb.png

Edited by pSycho-Y2K
Link to comment
Share on other sites


I progressed a bit further and it's working properly now during the RunOnceEx process. The solution: msxml6.dll was not registered at that point. I've added regsvr32 /s msxml6.dll to the installationscript before executing the drivertool, and it's running perfect now :D

The only annoying thing is the Found New Hardware Wizard which pops up occasionally. I'd like to suppress that Wizard, because it only requires Next and Finish when it's done. I know I can't disable it because it's a fundamental part of the hardware detection (it just doesn't do anything when you temporary rename %WINDIR%\system32\newdev.dll to something else). But as long as that thing is popping up, the unattended installation is never fully unattended. :( Maybe the drivertool can search for this Wizard window and silent pressing Next and Finish?

I could (it's not a big deal realy - althought i would have to add in .xml options for entering Window name and what to press manually due to language issues. However the question is why it's popping out... If we could know why it's popping out in first place we could do something to prevent it. As designed Wizard should never popup.

Link to comment
Share on other sites

I could (it's not a big deal realy - althought i would have to add in .xml options for entering Window name and what to press manually due to language issues.

If you don't mind, could you implement this? As long as we don't have a good solution for it, this can be a temporary workaround for the time being. Then we can have a fully unattended installation :)

Link to comment
Share on other sites

I could (it's not a big deal realy - althought i would have to add in .xml options for entering Window name and what to press manually due to language issues.

If you don't mind, could you implement this? As long as we don't have a good solution for it, this can be a temporary workaround for the time being. Then we can have a fully unattended installation :)

This will be implemented in the next version:

- advanced drive mapping solution (DONE)

- diffrent way of handling paths (internal changes mostly, nothing that will affect users) (DONE)

- window managing of Hardware wizard (DONE)

- prepare drivers database (DONE)

- usage of driver database (to faster driver instalation)

- usage of driver database on the fly (so it's created and used right after program is started to get rid of any Registry limits or Windows searching thru drivers for very long time).

- better error proof listing of directories (completly autoit solution and not like today usage of DIR command and reading the output which can have some issues on foreign systems) (DONE)

- probably something more :) (DONE)

Now i only have to find time for all that and we're done ;) Most likely will be done before end of the year but no promises!

Edited by MadBoy
Link to comment
Share on other sites

- prepare drivers database

- usage of driver database (to faster driver instalation)

Also it would be nice to query some foreign server (like driveragent.com ) for the absent drivers, and then download them on-the-fly.

Or we could create a special server with driver database for that.

Link to comment
Share on other sites

- prepare drivers database

- usage of driver database (to faster driver instalation)

Also it would be nice to query some foreign server (like driveragent.com ) for the absent drivers, and then download them on-the-fly.

Or we could create a special server with driver database for that.

All in due time my friend... let's just get the base of this working first.

Link to comment
Share on other sites

The app works great, but is it possible to have completely unattended install? When the updates are ran, I still have to click next and finish on the update hardware wizard. Automatic mode isn't so automatic for me. Its the video drivers that it gets hung up on, asking for user input and what not.

Link to comment
Share on other sites

The app works great, but is it possible to have completely unattended install? When the updates are ran, I still have to click next and finish on the update hardware wizard. Automatic mode isn't so automatic for me. Its the video drivers that it gets hung up on, asking for user input and what not.

As promised earlier to pSycho-Y2K i will implement Hardware Wizard managing in next version. Unfortunetly due to many languages it will have to be set in the .xml like this:

<window_managing>

<hardware_wizard>

<wizard_use>Yes</wizard_use>

<wizard_title>Found New Hardware Wizard</wizard_title>

<wizard_button_cancel>Cancel</wizard_button_cancel>

<wizard_button_next>Next</wizard_button_next>

<wizard_button_finish>Finish</wizard_button_finish>

</hardware_wizard>

</window_managing>

On diffrent language settings you will have to set diffrent settings.

Link to comment
Share on other sites

MadBoy what XML DOM wrapper did you end up using?

Coming along nicely btw!

There's only one XML wrapper and it's eltorro's one which will probably end up as autoit udf comming with autoit package. He also helped with the functions i use for having it in the format as kind of 'registry type'. Here's a link to XML dom wrapped on autoit page if you need it http://www.autoitscript.com/forum/index.php?showtopic=19848 :)

Link to comment
Share on other sites

Almost done I see? I can taste the new features already! :D

It's almost done .. and would be done already if i hadn't included Modern Menu... now menu looks great however everytime you right click on the main listview you can see the menu showing up. ANd if you do a lot of left clicking on the listview you can also close the program. So i will have to either

a) remove it and replace it again with old styled menu

B) let it be and warn to not touch listview ;P

Link to comment
Share on other sites

Couple of suggestions if you don't mind my input:

1. If the config file is not detect, generate a default one (if possible).

2. Why are problem id's already enabled by default?

*EDIT: I realize why now, nicely done. Question though, devices I have intentionally disabled, (error code 22), will they be updated or skipped or what?

3. For consistency with windows environment variables, suggest to leave at least the names the same, or change them to the exact ones, ie. %windir%, %programfiles%, %computername% %tmp% "%userprofile%\My Documents" etc.

I haven't dugg into this too much, just trying to get the thing to even launch without erroring out. I really would like to have the ability to automatically find the 'driver_drive' as the complete path up to the point where the executable is located

i.e. X:\subfolder1\subfolder2\

-->executable

-->Drivers\

-->etc

This way, I can simply drag and drop the 'subfolder2' to any device, key etc without worrying about what the underlying path is...

For example, right now, I am in testing phase and have my directory on my machine setup as:

c:\Test\UniversalDriverDisk\ ....etc

but it is looking for the C:\Drivers folder, not the C:\Test\UniversalDriverDisk\Drivers folder....

I'm going to do some testing today and will post back later. Nice work though. I ran across this by accident, I was looking for WMI/VBS scripts to enumerate through the devices so I could write a script on my own. But this is by far more superior (the driver update feature I think is really neat.)

Edited by JuMz
Link to comment
Share on other sites

When I run the program, I get an error saying:

"There are no devices marked for removal. If you think this is an error correct config file with proper PROBLEM ID's."

Why is this even comming up? Why does there even have to be a device marked for removal to begin with?

EDIT: Does the 'drivers_copy_path' accept environment variables? I do not wish to hard code the path but rather have it %systemdrive% or %windir% etc

And for the log file, how do you intend to write to the $programdir$ if this was burned on a CD?

EDIT: Can't seem to get the 'update drivers' feature working. I run the app on a machine I know needs updates but it doesn't even do anything, comes up with the same error about no devices marked for removal. Im not trying to do that, I just want to update drivers...

Edited by JuMz
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...