花了一天时间写了个驱动(服务)加载控制器,用来动态的控制一个设备服务的运行与否。比如可以关闭掉USB端口的硬件识别,然后重新打开服务,使能设备的识别。
代码很简单,就是调用了几个winsvc.h中的api,但是怪问题还是挺多的。比如注册表删除不干净服务就不会完全中止,开着设备管理器会导致服务无法关闭等等。
debug了一整天,终于ok了。最后重构了几个地方,小小的完善了一下程序结构。
本文介绍了一个用于动态控制设备服务运行状态的驱动加载控制器的开发过程。该控制器能够实现设备服务的开关操作,如关闭USB端口硬件识别并重新启用。作者在开发过程中遇到了一些挑战,包括注册表清理和设备管理器干扰等问题。
花了一天时间写了个驱动(服务)加载控制器,用来动态的控制一个设备服务的运行与否。比如可以关闭掉USB端口的硬件识别,然后重新打开服务,使能设备的识别。
代码很简单,就是调用了几个winsvc.h中的api,但是怪问题还是挺多的。比如注册表删除不干净服务就不会完全中止,开着设备管理器会导致服务无法关闭等等。
debug了一整天,终于ok了。最后重构了几个地方,小小的完善了一下程序结构。
1750

被折叠的 条评论
为什么被折叠?