PNP Driver Install Problems
Hi,
I've tried implementing the template driver MSI as in the sticky above, but I can't get it to work. I've edited the custom action to reference my .inf file & tried to install it.
It seems to work insofar as the OEMXX.inf is copied & PNF created. However when I plug my USB device in, I'm still prompted with the install new hardware Wizard. The device will not function until the drivers are installed in this way.
It should be noted that this driver is unsigned, I don't know if this will make a difference because the template example includes a .cat file. mine doesnt!
Thanks
I've tried implementing the template driver MSI as in the sticky above, but I can't get it to work. I've edited the custom action to reference my .inf file & tried to install it.
It seems to work insofar as the OEMXX.inf is copied & PNF created. However when I plug my USB device in, I'm still prompted with the install new hardware Wizard. The device will not function until the drivers are installed in this way.
It should be noted that this driver is unsigned, I don't know if this will make a difference because the template example includes a .cat file. mine doesnt!
Thanks
0 Comments
[ + ] Show comments
Answers (21)
Please log in to answer
Posted by:
dm1
19 years ago
Guys,
thanks for your replies.
My final solution was this.....
We use Kix wrapper script here to wrap any executables/MSIs being deployed, so I used DEVCON.EXE to install the drivers. Its a pretty handy tool included in XP in case you havent heard of it (I hadn't!)
EG:(Devcon install "C:\Program Files\App\Driver\drivername.inf" "USB\VID_XXXX&PID_XXXX"')
The limitations to this are:
1. The USB dongle must be present before install
2. The drivers will only work for the port that the USB dongle is plugged into. i.e. try another one, and you'll be prompted.
The benefits are:
1. Can be done silently without user interaction.
Not pretty, but at least I've managed a HALF solution which is better than nothing! [8D]
thanks for your replies.
My final solution was this.....
We use Kix wrapper script here to wrap any executables/MSIs being deployed, so I used DEVCON.EXE to install the drivers. Its a pretty handy tool included in XP in case you havent heard of it (I hadn't!)
EG:(Devcon install "C:\Program Files\App\Driver\drivername.inf" "USB\VID_XXXX&PID_XXXX"')
The limitations to this are:
1. The USB dongle must be present before install
2. The drivers will only work for the port that the USB dongle is plugged into. i.e. try another one, and you'll be prompted.
The benefits are:
1. Can be done silently without user interaction.
Not pretty, but at least I've managed a HALF solution which is better than nothing! [8D]
Posted by:
dm1
19 years ago
Posted by:
sejacru
19 years ago
Posted by:
kkaminsk
19 years ago
USB drivers are a pain in the ### for the fact that the driver does not configure until the device is plugged in. The policy at one site I worked at was to have the driver pushed then a technician showed up with the device and logged on as local administrator then plugged the device into every possible USB port. Then the user could use the USB device without having to install the driver. I know, it's not pretty.
Posted by:
MSIMaker
19 years ago
Posted by:
DuncanPaul
19 years ago
I have a driver that doesn't produce the hardware wizard, but does give the "this software has not passed logo testing" warning. (I, er.. repackaged their MSi), and the hardware does in fact work, (used either the dpinst program, or the setupapi method), but I get the warning until I log onto the PC as an admin.
I'm stuffed aren't I, as its unsigned?
I'm stuffed aren't I, as its unsigned?
Posted by:
kkaminsk
19 years ago
Posted by:
sini
19 years ago
Ever tried Microsoft Driver Installation Framework? It comes with an executable named DPInst.exe which can install PNP Drivers! Its pretty simple you just have to place all required files and the .inf in the same directory and then just call DPInst.exe which installs by default every .inf it finds. It also comes with silent switches and has options like: also install unsigned drivers...
Posted by:
kkaminsk
19 years ago
But can DPInst silently install an unsigned driver? See the documentation:
Setting the quietInstall Flag
By default, DPInst displays all wizard pages, user dialog boxes, and other user messages that DPInst and Windows generate. To suppress the display of these user interface items, set the quietInstall flag to ON, which configures DPInst to operate in quiet-install mode. You should run DPInst in quiet-install mode only in situations where no user interaction is potentially required to complete an installation. Two typical situations that require user interaction are if Windows prompts a user before installing an unsigned driver package or if Windows prompts a user for the location of missing files.
If DPInst is running in quiet-install mode and Windows requires a user interaction to complete an installation, the installation faisl. The DPInst return code provides information about the status of the driver installation, including whether an installation failed or a system restart is required. In addition, if the installation failed, the DPInst log includes an entry that indicates the installation failed. However, the log does not indicate the installation failed because a user interaction was required.
Setting the quietInstall Flag
By default, DPInst displays all wizard pages, user dialog boxes, and other user messages that DPInst and Windows generate. To suppress the display of these user interface items, set the quietInstall flag to ON, which configures DPInst to operate in quiet-install mode. You should run DPInst in quiet-install mode only in situations where no user interaction is potentially required to complete an installation. Two typical situations that require user interaction are if Windows prompts a user before installing an unsigned driver package or if Windows prompts a user for the location of missing files.
If DPInst is running in quiet-install mode and Windows requires a user interaction to complete an installation, the installation faisl. The DPInst return code provides information about the status of the driver installation, including whether an installation failed or a system restart is required. In addition, if the installation failed, the DPInst log includes an entry that indicates the installation failed. However, the log does not indicate the installation failed because a user interaction was required.
Posted by:
sini
19 years ago
Missing files are no problem you may just run it in interactive mode first, as you said DPInst will ask you for the location of the drivers. You then copy the all drivers required in a single directory including the .inf file. DPInst has a commandline switch allowing you to install usinged drivers quietly. So there is no need for user interaction if done correctly!
Posted by:
kkaminsk
19 years ago
Posted by:
dubwize
19 years ago
I made a package where i put the drivers and the dpinst.exe in one directory.
Then call from the package the executable with commandline: dpinst.exe /lm /s
this is legacy mode and silent install. (see dpinst.exe /? )
I'm using Wise for this.
And then i plugged in the hardware. Works fine.
Remember if you work with the template you can only use 1 .inf file and only the driver files going with this .inf file.
Then call from the package the executable with commandline: dpinst.exe /lm /s
this is legacy mode and silent install. (see dpinst.exe /? )
I'm using Wise for this.
And then i plugged in the hardware. Works fine.
Remember if you work with the template you can only use 1 .inf file and only the driver files going with this .inf file.
Posted by:
kkaminsk
19 years ago
Posted by:
kkaminsk
19 years ago
Posted by:
jendres
19 years ago
As kkaminsk is saying, there is a problem with PnP drivers which haven't been WHQL certified being isntalled on Win XP and earlier.
Difx has a legacy switch which is supposed to ignore unsigned driver check, but it doesn't. (Apparently it is a OS issue, more on that later.)
However the dll can be hacked to skip the signature check. (At least the version 1 has been.) This would allow unsigned drivers to be installed. Not great as you would prefer to be able to check against your own trusted signatures. So now you are wondering, why could it be installed with a hacked version 1 but can't be done with a version 2 which is supposed to support this?
Good question? Why is that MS? Can't be an OS issue, the hacked version worked fine.
A work around if you are doing you are not doing instalations via GPO is to use an AutoIt script to click the OK button.
Difx has a legacy switch which is supposed to ignore unsigned driver check, but it doesn't. (Apparently it is a OS issue, more on that later.)
However the dll can be hacked to skip the signature check. (At least the version 1 has been.) This would allow unsigned drivers to be installed. Not great as you would prefer to be able to check against your own trusted signatures. So now you are wondering, why could it be installed with a hacked version 1 but can't be done with a version 2 which is supposed to support this?
Good question? Why is that MS? Can't be an OS issue, the hacked version worked fine.
A work around if you are doing you are not doing instalations via GPO is to use an AutoIt script to click the OK button.
Posted by:
dubwize
19 years ago
Your right, my driver was signed. I have now a driver here which is not signed (no .cat file). I just called the dpinst.exe and then after that a autoIT script(exe) to click 'continue installation' on the software installation box.
DPinst.exe /LM /SW
myscript.exe
$Title = "Software Installation"
WinWaitActive ( $Title )
ControlClick ( $Title , "Continue Anyway" , "Button1" )
exit
DubWize.
DPinst.exe /LM /SW
myscript.exe
$Title = "Software Installation"
WinWaitActive ( $Title )
ControlClick ( $Title , "Continue Anyway" , "Button1" )
exit
DubWize.
Posted by:
viv_bhatt1
19 years ago
Posted by:
kkaminsk
19 years ago
ORIGINAL: jendres
As kkaminsk is saying, there is a problem with PnP drivers which haven't been WHQL certified being isntalled on Win XP and earlier.
Difx has a legacy switch which is supposed to ignore unsigned driver check, but it doesn't. (Apparently it is a OS issue, more on that later.)
I talked to the DIFx team a couple months ago explaining how this lack of having corporate signed driver packages not install completely silently is an issue for packaging drivers in a corporate environment which is one of the facets where this tool is being used. I don't have the email response with me but the response I got from the DIFx group was that they would allow for more flexibility with non-WHQL drivers to be installed silently in the 3.0 release. If you can please join up on the 3.0 beta to ensure us corporate users get the functionality we want.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.