• C

Dynamic reloading device drivers

I writing a device driver and I load it dynamically now, but when I make changes I need to reboot to get the new version to run. I can delete the old file and replace it with the new version. But the old version is still running, how can I get the old version out of memory without rebooting?

Thanks
Bill
LVL 1
bnemmersAsked:
Who is Participating?
 
grg99Connect With a Mentor Commented:
What's the operating system?

Windows NT thru XP have the ability to modify system files on the fly without rebooting, DOS and Windows 95 thru Me do not.

In general, it's not possible to "unload" a device driver unless it has an explicit entry point and code for unloading itself.  Most device drivers grab onto some interrupt or I/O chain, and the OS doesnt know about this and can't undo it in general-- there has to be specific code in the driver that unhooks itself from anything it has hooked into.

0
 
bnemmersAuthor Commented:
I using Win2k, I'll try putting some code to unload from the driver itself.
On a different note, do you know how to get the user name from a driver if you know the the process ID?

Thanks
Bill
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.