阅读:916回复:3
简单的函数入口
我把Wdm格式的一个小测试驱动改成Nt格式的,为什么指定的IRP_MJ_CREATE的例程没有被调用?
extern \"C\" NTSTATUS DriverEntry( IN PDRIVER_OBJECT DriverObject,IN PUNICODE_STRING RegistryPath) { ... DriverObject->MajorFunction[IRP_MJ_CREATE]=TESTCreate; .... return STATUS_SUCCESS; } TESTCreate在另外一个cpp里,编译的时候也没有出错,原来是wdm的时候工作的好好的,现在调用的时候用 HANDLE hdlTest=CreateFile(\"\\\\\\\\.\\\\DTest\", GENERIC_READ|GENERIC_WRITE, 0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL, NULL); 结果句柄返回无效,根本就不会调用TESTCreate函数,但是我调试发现DriverEntry里的设置语句已经执行,符号连接名也没错,为什么却没有调用TESTCreate呢? |
|
|
沙发#
发布于:2002-11-23 22:21
问题解决了,谢谢各位关心
|
|
|
板凳#
发布于:2002-11-24 14:12
哥们,具体谈谈!!ok
|
|
地板#
发布于:2002-11-24 19:26
是在DriverEntry里创建设备时符号连接名的参数传错了
|
|
|