阅读:1325回复:6
怎样通过应用程序改变驱动程序里面的变量值
请问各位法师,我在NDIS中间层驱动程序里面设定了一系列规则值,想在驱动加载后通过应用程序来随时改变这些规则值,请问应该如何来实现?
|
|
论坛版主
|
沙发#
发布于:2003-10-24 22:48
用deviceiocontrol阿,发请求下去叫驱动改
|
|
板凳#
发布于:2003-10-26 11:18
用deviceiocontrol阿,发请求下去叫驱动改 我知道要用deviceiocontrol,但是看了一些资料 还是有些不明白,能否说得详细一些?谢谢 |
|
地板#
发布于:2003-10-26 11:58
[编辑 - 12/2/03 by antspower] |
|
|
论坛版主
|
地下室#
发布于:2003-10-26 23:13
不好意思,要完全说明白太多了,我只能说个大概,你需要自己摸索一下!
你先用WINDOW的宏CTL_CODE自己定义一个IOCTL的控制码,专门用于你更改驱动里面你感兴趣的东西,把你要改的新内容放到DEVIOCTRL的INPUT缓冲区里面,控制代码就用你定义的这个,然后调用这个函数发下去;在驱动里面你需要对上层来的IOCTL控制码进行判断,收到你定义的这个IRP时到相应域里面找上层传下来的需要更新的值的缓冲区的首指针,这个指针与你选用的IOCTL时指定的消息传递参数有关,在用CTL_CODE定义IOCTRL的时候第三个参数指定方式,你要看看相关的说明,好像有4种,找到上面传下来的数据缓冲区指针,你想传的东西的一切都可以自己定义,不知道说的明白不,弄个最简单的试试就好,祝兄弟成功! |
|
5楼#
发布于:2003-10-27 14:07
不好意思,要完全说明白太多了,我只能说个大概,你需要自己摸索一下! 谢谢盛情答复,明白了一些,我去上机试一试 |
|
6楼#
发布于:2003-10-27 14:18
非常抱歉,是不是给过一次分后给分的按钮就没有了,谢谢两位
|
|