How to avoid Systems Settings Change dialog

I’ve written an installation application for Windows 2000 to install and
load a non-PNP SCSI miniport driver using the Win32 API to the service
control manager, just like I used to do for Windows NT drivers.

The only real difference I’ve noticed doing it this way on Windows 2000
is that when the driver loads, the PNP manager goes off and creates a
keys for the device in the ENUM tree.

Otherwise, the driver installs and loads just fine, without requiring a
system reboot.

However, the next time the system is rebooted, a Systems Settings Change
dialog box appears as soon as I log back in that states that yet another
reboot is required. Although the PNP manager clearly thinks another
reboot is needed, the driver loaded successfully during bootup, and if I
just click No to the dialog box, everything appears to be just fine and
dandy.

Any way I can suppress this dialog box from appearing?

Also, is there any reason why this installation method won’t work on XP?

Thanks,

  • Jay

Jay Talbott
Principal Consulting Engineer
SysPro Consulting, LLC
3519 E. South Fork Drive
Suite 201
Phoenix, AZ 85044
(480) 704-8045
xxxxx@sysproconsulting.com
http://www.sysproconsulting.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Jay,

As far as I know, there is no way to supress this annoying message. If
memory serves me, after the call to CreateService(), the driver shows up in
devmgmt under “unknown device”, until after the first reboot, when it
magically migrates to “SCSI and RAID controllers”. This migration makes
the system think there is a new legacy SCSI adapter, and since it is not
PnP, the system thinks a reboot is needed to get things working.

Your CreateService() implmentation *should* work OK on WinXP, at least mine
did.

But why not use a PnP driver? You can write a simple INF, use DDK sample
code at ntddk\src\general\setup\install and ntddk\src\general\setup\remove
to install and remove it, get the benefits of power management, and not
ever get the annoying “reboot required” message. The drawback is that INF
driver installations result in the annoying “digital signature not found”
message, whereas CreateService() driver installations don’t. It just
depends on which message you consider to be less annoying.

Good luck,
Matt

On 01/25/02, ““Jay Talbott” ” wrote:
> I’ve written an installation application for Windows 2000 to install and
> load a non-PNP SCSI miniport driver using the Win32 API to the service
> control manager, just like I used to do for Windows NT drivers.
>
> The only real difference I’ve noticed doing it this way on Windows 2000
> is that when the driver loads, the PNP manager goes off and creates a
> keys for the device in the ENUM tree.
>
> Otherwise, the driver installs and loads just fine, without requiring a
> system reboot.
>
> However, the next time the system is rebooted, a Systems Settings Change
> dialog box appears as soon as I log back in that states that yet another
> reboot is required. Although the PNP manager clearly thinks another
> reboot is needed, the driver loaded successfully during bootup, and if I
> just click No to the dialog box, everything appears to be just fine and
> dandy.
>
> Any way I can suppress this dialog box from appearing?
>
> Also, is there any reason why this installation method won’t work on XP?
>
> Thanks,
>
> - Jay


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com