阅读:1520回复:4
搞不懂的问题,请各位大虾帮忙。
在packet.c中的driverentry例程中:
NTSTATUS DriverEntry( IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath ) { /* 一系列的操作 */ protocolChar.MajorNdisVersion = 5; protocolChar.MinorNdisVersion = 0; protocolChar.Name = protoName; protocolChar.OpenAdapterCompleteHandler = PacketOpenAdapterComplete; /* 一系列的操作 */ } 其中的: protocolChar.OpenAdapterCompleteHandler = PacketOpenAdapterComplete; 请问是不是把指向PacketOpenAdapterComplete函数的指针赋给protocolChar.OpenAdapterCompleteHandler 域,但又是怎么样把参数传给函数PacketOpenAdapterComplete,好像没看到什么时候去调用该函数,也没有传什么参数给该函数嘛?一直让我不知其解,请各位大虾帮忙解释一下,谢谢! |
|
沙发#
发布于:2002-06-05 11:12
在packet.c中的driverentry例程中: 你当然看不到由调用的地方,因为 protocolChar.OpenAdapterCompleteHandler是由NDIS来调用的. |
|
|
板凳#
发布于:2002-06-05 11:14
哦,谢谢,那它的参数也是可以由NDIS自动的传进去的吧?
|
|
地板#
发布于:2002-06-05 11:20
在packet.c中的driverentry例程中: 跟非NDIS驱动中设备Dispatch例程入口一样的。只不过是换了个形式。以前是I/O Manager管理各个IRP入口,而现在换成了NDIS,又有一套新的接口。 |
|
|
地下室#
发布于:2002-06-05 11:20
哦,谢谢,那它的参数也是可以由NDIS自动的传进去的吧? 是的. |
|
|