- NSIS Discussion
- Does NSIS support driver installation?
Archive: Does NSIS support driver installation?
vc6
22nd June 2007 21:19 UTC
Does NSIS support driver installation?
I have written a (Windows XP) driver with a corresponding .inf file that can be used in the standard way: Control Panel's Add Hardware.
However, "Add Hardware" is interactive and now I would like to automate this (preferrably using NSIS).
Is this possible? Does NSIS have built-in API for handling drivers?
If so, where do I look?
Thanks,
Victor
Joel
23rd June 2007 01:04 UTC
I don't know try this.
Theresias
23rd June 2007 02:58 UTC
Check out DPInst, this is according to our experience the best choice - especially when you plan on having your drivers installed on Vista etc.
vc6
23rd June 2007 19:27 UTC
Originally posted by Theresias
Check out DPInst, this is according to our experience the best choice - especially when you plan on having your drivers installed on Vista etc.
Thanks. I was unaware of the existence of DPInst. My initial search yielded this:
Driver Package Installer (DPInst)http://msdn2.microsoft.com/en-us/library/ms790308.aspxmsdn2.microsoft.com/en-us/library/ms790308.aspx
I was not sure whether it supports totally quiet mode (i.e. not even a single dialog prompting the user), but then I found this:
Setting DPInst Configuration Flagshttp://msdn2.microsoft.com/en-us/library/ms791062.aspxmsdn2.microsoft.com/en-us/library/ms791062.aspx
Could you confirm my understanding that it supports
totally quiet installation?
Thanks also to Joel who provide the link to InstDrv. I will take a look at it too.
Victor
Theresias
23rd June 2007 19:35 UTC
Depending on the actual OS a fully quite installation would need signed and verified drivers I guess - not sure if you are willing to pay M§ for that. :)
For my/our purposes DPInst is just fine, so we ended up using that instead of InstDrv which had problems on Vista in our case.
vc6
24th June 2007 12:39 UTC
Originally posted by Theresias
Depending on the actual OS a fully quite installation would need signed and verified drivers
Of course. Thanks for the clarification.
Originally posted by Theresias
For my/our purposes DPInst is just fine, so we ended up using that instead of InstDrv which had problems on Vista in our case.
I believe that I will eventually switch (for the same reasons as yours) to DPInst. For now I am looking into InstDrv since I already have an NSIS script for the entire package that I am writing (which includes a driver).
Do you happen to know what
drvHWID in InstDrv's InstDrv::InitDriverSetup means?
Is it the same thing as what's under
HKLM\SYSTEM\CurrentControlSet\Enum?
Thanks,
Victor
vc6
25th June 2007 04:02 UTC
Never mind. InstDrv turned out to be a total waste of time for me. Its documentation is not that great either.
I am going to try DPInst now. It is also a better investement (I do intend to eventually target Vista as well, not only XP).
Thanks,
Victor
JungiX
12th August 2007 09:28 UTC
Hello,
I have a problem with installing drivers on windows 2k.
Our setup installs driver from windows 2k up to vista, so we tried to use DPInst from the DIFx (part of WDK 6000).
An older version of the setup used the Inst_Drv plugin (SetupOEMInf) for installation. Switched for vista compatibility.
It works fine for xp/vista, but on 2k it has a strange behaviour. If an older version of the driver is installed (eigher SetupOEMInf or DPInst) DPInst will not install the newer driver. You have to uninstall the old driver first. I tried the SetupUninstallOEMInf (or similar) until i saw, that api function does not exist in windows 2k. A manual check of the driver version (which works) and then force DPInst to install the driver will only install the driver for a plugged device. Every other devices will still use the old driver.
Continue using of the Inst_Drv plugin for windows 2k setup seems to end in not installing the driver at all.
I'm at the end of ideas.
I hope one of you can help me with this problem
Truth Unknown
27th December 2008 00:38 UTC
Originally posted by vc6
Do you happen to know what drvHWID in InstDrv's InstDrv::InitDriverSetup means?
This is the Hardware ID that Windows will use to install drivers, you can also use the Compatibility IDs. This is easily found in the details tab of the Device's Properties page in Device Manager and in the INF file of the driver.
---
In my opinion, the InstDRV plugin isn't completely bad, it does have its shortcomings and quirks, but it's usable. Heck, I use it now, but I should really move on to DPInst.
Yes, I know this a 2 month old topic.
JasonFriday13
27th December 2008 04:55 UTC
[off topic] Its actually 16 months old :eek: .