Archive: Does NSIS support driver installation?


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


I don't know try this.


Check out DPInst, this is according to our experience the best choice - especially when you plan on having your drivers installed on Vista etc.


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.aspx
msdn2.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 Flags
http://msdn2.microsoft.com/en-us/library/ms791062.aspx
msdn2.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

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.


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

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


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


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.

[off topic] Its actually 16 months old :eek: .