阅读:1027回复:3
几个初学者的问题,请大虾帮忙!
在WDM中应用程序传给我的数据inputbuffer[10],我怎么得到?是在DeveceControl()中吗?我怎样将数据传给应用程序?谢谢!
|
|
沙发#
发布于:2003-11-05 09:13
在WDM中应用程序传给我的数据inputbuffer[10],我怎么得到?是在DeveceControl()中吗?我怎样将数据传给应用程序?谢谢! 这些问题,书上有明确的答案 |
|
板凳#
发布于:2003-11-05 09:26
通过DeviceIoControl()函数进行获取,当然你的驱动程序要先和应用程序进行通讯
|
|
|
地板#
发布于:2003-11-05 09:29
[quote]在WDM中应用程序传给我的数据inputbuffer[10],我怎么得到?是在DeveceControl()中吗?我怎样将数据传给应用程序?谢谢! 这些问题,书上有明确的答案 [/quote] 还是说说吧: 1)app->DRIVER的数据你可以用DeveceControl()方式,你也可以用writefile()的方式 2)driver->app数据,你可以用DeveceControl()方式或者readfile的方式 3)具体用什么,取决你的喜好及driver的写法 4) 如果你用method_buffer的方式,数据在AssociatedIrp.SystemBuffer中 5)如果用method_direct ,数据在irp->mdlAddress中 6)如果method_neither ,数据在irp->userbuffer 7)如果你使用了app与driver内存共享的方法 a)app可以申请内存,将地址传给driver b)driver申请内存,将地址传给app c)共享命名section |
|