阅读:1291回复:2
不知出错原因,请大家指点
我是个WDM驱动开发新手,请大家多多指教。
我现在开发一个基于PCI总线的WDM驱动程序。 现在我仅仅写一个简单的程序, 驱动在加载后,调用了DriverEntry(这个我已经确定),但是AddDevice例程却没有加载。 我现在仅仅处理了几个IRP,代码如下:(不知道为什么系统不调用AddDevice例程) extern \"C\" NTSTATUS DriverEntry( IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath) { NTSTATUS status = STATUS_SUCCESS; // Export other driver entry points... DriverObject->DriverExtension->AddDevice = WdmIoAddDevice; DriverObject->DriverUnload = WdmIoUnload; DriverObject->MajorFunction[IRP_MJ_CREATE] = WdmIoCreate; DriverObject->MajorFunction[IRP_MJ_CLOSE] = WdmIoClose; DriverObject->MajorFunction[IRP_MJ_PNP] = WdmIoPnp; DriverObject->MajorFunction[IRP_MJ_POWER] = WdmIoPower; DriverObject->MajorFunction[IRP_MJ_SYSTEM_CONTROL] = WdmIoSystemControl; return status; } #pragma code_seg() // end INIT section 请大虾给我分析一下,是不是我的代码有问题。 |
|
沙发#
发布于:2001-12-22 09:30
确认你的adddevice没有问题
|
|
|
板凳#
发布于:2001-12-23 19:30
应该没有问题,而现在是这个例程(AddDevice)根本没有加载进去。
|
|