阅读:1383回复:0
通过辅网卡查询OID的问题
在DDK关于NdisMSetMiniportSecondary的解释中提到:
NdisMSetMiniportSecondary sets the specified miniport driver adapter to the secondary role in relation to the primary miniport driver adapter. The primary miniport driver adapter handles all packet transfers and requests for information that are made by protocol drivers. However, NDIS can send specific requests to the secondary miniport driver adapter. 也就是说,所有的数据包和查询都是从主网卡走,而只有某些特定查询通过辅网卡进行。 我现在的环境是一台笔记本两块无线网卡,WindowsXP系统,想对辅网卡进行一些query和set OID的操作,应该如何调用NdisRequest呢? 我自己试验了一下,用Passthru的MPQueryInformation,可以查到OID,但是用MPSetInformation来设置OID时,每次执行到 if (pAdapt->MPDeviceState > NdisDeviceStateD0 || pAdapt->StandingBy == TRUE) { Status = NDIS_STATUS_FAILURE; break; } 就返回,是否因为辅网卡的power state 处于非D0态? 我把这行注释掉,执行就蓝屏;自己写了一个MySetInformation,把MPSetInformation中关于power状态的代码都去掉了,还是蓝屏…… 各位朋友有什么建议吗?谢谢先了。 btw:我set OID的操作是在PtRequestComplete里面进行的,也就是说,我先query OID,然后在PtRequestComplete里面根据查询到的OID的状态再执行set OID的操作,不知道这样做是否可行。还请各位指点。 我是新手,请多关照,呵呵。 |
|
|