阅读:1507回复:2
对于用Driverstudio生成的驱动程序如何改呢,
对于用Driverstudio生成的驱动程序如何改呢,我要用Deviceiocontrol发送数据到固件,程序应该如何写呢??
我看有些资料中介绍用到 _try ,_finish 等,我照着加入了,但编译就出现错误。轻大侠指点。有分相送。 |
|
最新喜欢:![]() |
沙发#
发布于:2005-05-10 08:32
//利用向导可以添加控制代码,如下的BULK_READ;
//也可以自己写在头文件中 //如 /* #define BULK_READ CTL_CODE(FILE_DEVICE_UNKNOWN, 0x800, METHOD_IN_DIRECT, FILE_READ_DATA) #define BULK_WRITE CTL_CODE(FILE_DEVICE_UNKNOWN, 0x801, METHOD_OUT_DIRECT, FILE_WRITE_DATA) */ NTSTATUS FlyDevice::DeviceControl(KIrp I) { NTSTATUS status; switch (I.IoctlCode()) { case BULK_READ: status = BULK_READ_Handler(I);//你的处理函数 break; case BULK_WRITE: status = BULK_WRITE_Handler(I); break; ………… } 在应用程序中: CHAR bufInput[IOCTL_INBUF_SIZE]; CHAR bufOutput[IOCTL_OUTBUF_SIZE]; ULONG nOutput; if (!DeviceIoControl(hDevice, BULK_READ, bufInput, IOCTL_INBUF_SIZE, bufOutput, IOCTL_OUTBUF_SIZE, &nOutput, NULL) ) { printf(\"ERROR:\"); Exit(1); } printf(\"try:%d,recive:%d\",IOCTL_OUTBUF_SIZE,nOutput); for(int i=0;i<nOutput;i++) { printf(\"%x,\",bufOutput); } |
|
板凳#
发布于:2005-05-10 10:09
明白点了
|
|
|