改装passthru做了一个包过虑的东西想通过win32应用程序来改变过虑条件听说是利用IRP但不知道具体用哪个IRP以及怎么传递参数哪位大侠能够不吝惜笔墨详细说说?分不够尽管开口
回复(7) 2003-12-30 22:06 来自版块 - NDIS网络接口开发
表情
yongliliu其实这里面还有的技术问题就是共享内存 1、如果是驱动层分配的共享内存是物理内存的话,就要用虚拟地址进行映射之后才能反给应用层进行引用处理,因为应用层一般不能直接访问物理内存。(其实也可以直接访问) 2、如果是应用层分配内存的话,只要把指针传递给驱动层就可以直接操作引用了 ...(2004-01-07 16:32)
wxl_50685330可以啊,他们不是说了嘛,但是你还必须在IM中CREATE一个设备出来,才能接受上层来的控制命令,可以这样: 在MINIPORTINITIALIZE里面调用你的创建设备的代码,实际上最终是用NdisMRegisterDevice创建出一个设备,这样,你可以定义这个设备的分派例程(...(2003-12-31 12:12)
wengyu100可能我自己说的也不详细 我仔细说说: 在中间层定义一个IP变量IPadr=×××。×××。×××。××× 在ptreceive中受到数据包时,我对包进行解析 当该包的IP地址==IPadr,就把包传给协议层 否则释放改包 我现在想知道通过win32应用程序能否改变...(2003-12-31 11:50)
wengyu100可能我自己说的也不详细 我仔细说说: 定义一个IP变量IPadr=×××。×××。×××。××× 在ptreceive中受到数据包时,我对包进行解析 当该包的IP地址==IPadr,就把包传给协议层 否则释放改包 我现在想知道通过win32应用程序能否改变 中间...(2003-12-31 11:46)
cloudycrobRc=DeviceIoControl(hdevice,(DWORD)IOCTL_SET_FILTERLIST,pFilterList, sizeof(FILTERLIST)+(pFilterList->AddressCount*sizeof(ULONG)), ...(2003-12-31 11:07)
wengyu100yongliliu大侠 多谢你回答我的问题 你说的1。2。我都已经搞定了 我想问的就是第3点 你能不能详细说说 最好能给个框架 谢谢(2003-12-31 10:46)
yongliliu1、首先你必须在你的驱动里面进行包的协议分析 2、注册NdisMRegisterDevice和DispatchTable函数表,以便响应上层应用的IOCTL,并进行相应的协议分析处理 3、在上层应用里面传自定义的IOCTL给你的驱动(2003-12-31 09:26)

返回顶部