阅读:1184回复:0
KernelDriver编程紧急求助
我用Kerneldriver编写的关于信号调理卡驱动,我用SoftICE进行debug发现,我可以从端口正确地读写数据,我把它存放在一个结构里,但在返回时,许多数据不正确。可能是内存的问题,不知如何解决。下面是我的一些代码:
case IOCTL_VIB_GETCHANNELCONFIG: { ... VIB_GET_CHANNELCONFIG *pBuf=(VIB_GET_CHANNELCONFIG *)Irp.IoctlType3InputBuffer(); BYTE byte; CHANNELCFG *pChCtrl=(CHANNELCFG *)malloc(sizeof(CHANNELCFG)) ...... //我将数据赋给结构 pChCtrl memcpy(Irp.UserBuffer),pChCtrl,sizeofCHANNELCFG)); Irp.Information()=sizeof(CHANNELCFG); } 在应用层我调用DeviceIoControl(..),发现数据不对,请大虾出手, 谢谢!给分! |
|
|