I had the same problem when developed NDIS filter driver and found that if I
disable all driver’s devices, PnP manager unloads it and loads it again when
I reenable them. You can try if it works for your driver using “enable”
example from DDK (src\general\setup\enable). If your devices aren’t listed
there, try Options | Show hidden devices. You can also use device manager
for this purpose but it needs more clicking.
Warning: if you disable a device using device manager, it cannot be
reenabled using enable. All APIs return success, enable shows enabled icon
but device is still disabled. Surprisingly, it works when device manager is
running alongside. Also, when you return device to initial state using
device manager, enable works as expected.
BTW, I wrote a small command line utility for this purpose and found that CM
API works much faster than appropriate SetupDi functions with the same
results.
Best regards,
Michal Vodicka
Veridicom
(RKK - Skytale)
[WWW: http://www.veridicom.com , http://www.skytale.com]
From: Stephen Williams[SMTP:xxxxx@icarus.com]
Reply To: NT Developers Interest List
Sent: Wednesday, September 06, 2000 01:02
To: NT Developers Interest List
Subject: [ntdev] starting/stopping PCI drivers
I’m accustomed to writing PCI drivers for NT 4.x, and I’m delving into
Windows 2000 world. I’m getting a handle on installing drivers, but I
would like to occasionally unload my .sys file and reload the one I
just compiled. I used to be able to do this with “net stop foo” and
“net start foo”, but now there is the [censored] PnP manager and I am
not finding the obvious trick for doing what I used to do trivially.
So can I drop in and restart a new .sys file without going through
a pile of bureaucrats (oh pardon, “wizards”) on the way? Seems like a
simple thing and I must be missing the obvious.
Steve Williams “The woods are lovely, dark and deep.
xxxxx@icarus.com But I have promises to keep,
xxxxx@picturel.com and lines to code before I sleep,
http://www.picturel.com And lines to code before I sleep.”
You are currently subscribed to ntdev as: xxxxx@rkk.cz
To unsubscribe send a blank email to $subst(‘Email.Unsub’)