This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- repair install doesn't update the device
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jan 26, 2011
01:56 PM
repair install doesn't update the device
Hi,
We have a Basic MSI project that installs 2 device drivers. Everything works fine for a fresh install, but a repair install only stages the drivers into the driverstore, it does not install them for the device itself.
The testcase is a 32Bit Windows 7
1) do a fresh install
2) go into DeviceManager and check that both devices have our drivers installed
3) uninstall the devices (check the checkbox to remove the drivers)
4) Rescan devicenode to get the device in as unknown / MS default drivers installed.
5) run a repair install
-> the drivers are staged, but the devices didn't change. I still have one unknown device and one that has the MS default drivers installed in the DeviceManager
6) rescan devicenode manually (or reboot)
-> the drivers for the unknown device get installed, the 2nd device still has the MS default one installed.
When looking at the setupapi.log, the UpdateDriversForPlugAndPlayDevices call is missing in a repair scenario. For the initial install it is there.
Any idea how to fix this? Could this be a bug in the DIFX tools? The MsiInstallDrivers and MSIProcessDrivers Custom actions do run in both scenarios. Is there another CA that I could look at that might be missing?
Any help is appreciated.
Thanks,
Sandra
We have a Basic MSI project that installs 2 device drivers. Everything works fine for a fresh install, but a repair install only stages the drivers into the driverstore, it does not install them for the device itself.
The testcase is a 32Bit Windows 7
1) do a fresh install
2) go into DeviceManager and check that both devices have our drivers installed
3) uninstall the devices (check the checkbox to remove the drivers)
4) Rescan devicenode to get the device in as unknown / MS default drivers installed.
5) run a repair install
-> the drivers are staged, but the devices didn't change. I still have one unknown device and one that has the MS default drivers installed in the DeviceManager
6) rescan devicenode manually (or reboot)
-> the drivers for the unknown device get installed, the 2nd device still has the MS default one installed.
When looking at the setupapi.log, the UpdateDriversForPlugAndPlayDevices call is missing in a repair scenario. For the initial install it is there.
Any idea how to fix this? Could this be a bug in the DIFX tools? The MsiInstallDrivers and MSIProcessDrivers Custom actions do run in both scenarios. Is there another CA that I could look at that might be missing?
Any help is appreciated.
Thanks,
Sandra
(3) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jan 27, 2011
05:50 AM
Hey Sandra,
not sure but it could really be a problem of DIFxApp since DPInst is working fine in the same scenario. I checked the setupapi.dev.log and noticed that SetupCopyOEMInf will be called twice during repair install. The first results with SUCCESS but the second results with FAILURE (0x00000050). Could it be that SetupCopyOEMInf will be called instead of UpdateDriverForPlugAndPlayDevices?!? (just a thought..).
-Holger
not sure but it could really be a problem of DIFxApp since DPInst is working fine in the same scenario. I checked the setupapi.dev.log and noticed that SetupCopyOEMInf will be called twice during repair install. The first results with SUCCESS but the second results with FAILURE (0x00000050). Could it be that SetupCopyOEMInf will be called instead of UpdateDriverForPlugAndPlayDevices?!? (just a thought..).
-Holger
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Mar 07, 2011
04:50 PM
Moin Holger,
thanks for looking into the issue. I openeded a support ticket with MS on this and just wanted to give some feedback on the results.
The bottomline is that the test case is invalid since the DeviceManager was used to change the devices state.
A repair install is only supposed to fix a malfunctioning driver. It is not supposed to change the devices state. This can only be achieved by a reinstall, not a repair.
-Sandra
thanks for looking into the issue. I openeded a support ticket with MS on this and just wanted to give some feedback on the results.
The bottomline is that the test case is invalid since the DeviceManager was used to change the devices state.
A repair install is only supposed to fix a malfunctioning driver. It is not supposed to change the devices state. This can only be achieved by a reinstall, not a repair.
-Sandra
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Mar 08, 2011
05:22 AM
SMadden wrote:
Moin Holger,
thanks for looking into the issue. I openeded a support ticket with MS on this and just wanted to give some feedback on the results.
The bottomline is that the test case is invalid since the DeviceManager was used to change the devices state.
A repair install is only supposed to fix a malfunctioning driver. It is not supposed to change the devices state. This can only be achieved by a reinstall, not a repair.
-Sandra
Danke für das Feedback, Sandra 🙂