阅读:5170回复:3
CreateService失败求救
动态加载nt驱动
驱动在drivermonitor下调试通过 使用CreateService加载驱动时返回1072错误信息 错误号1072 ERROR_SERVICE_MARKED_FOR_DELETE msdn中的解释是The specified service has been marked for deletion. 请问是怎么回事呀? 谢谢 |
|
沙发#
发布于:2003-06-10 13:55
先用drivermonitor加载了的,没有reboot,就createservice?
reboot一下看看? |
|
板凳#
发布于:2003-06-11 15:15
如果是动态加载的话, 你第一次调用CreateService是成功的吧, 当你退出程序的时候,调用了DeleteService的话? 就DELETE了你刚创建的SERVICE(需要REBOOT). 因此, 建议你在创建之前先判断你的SERVICE是否已经存在, 如果存在, 再判断是否START了. 不存在则调用CreateService来创建.
|
|
地板#
发布于:2003-06-13 23:25
产生这个错误的原因是因为你在第一次 DeleteDevice 的时候,虽然你的函数返回成功了,但是系统发现你的 driver 此时不能被删除(比如正在被其它进程使用之类的),所以只是把它标记为删除状态,然后你第二次 Create 的时候,因为这个 driver 实际上已经存在,只是被标记为删除状态了,所以创建无法成功。
一般重新启动系统后,此问题得解。 |
|