3472|5

69

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

关于DeviceIoControl返回87 [复制链接]

试图使用DeviceIoControl向过滤驱动发送控制代码。 源代码如下:
#define START_FILTER CTL_CODE(FILE_DEVICE_CD_ROM_FILE_SYSTEM,XD_CTL_CODE_READONLY,METHOD_BUFFERED,FILE_ANY_ACCESS)
#define STOP_FILTER CTL_CODE(FILE_DEVICE_CD_ROM_FILE_SYSTEM,XD_CTL_CODE_WRITABLE,METHOD_BUFFERED,FILE_ANY_ACCESS)
//XD_CTL_CODE_READONLY 为驱动程序中定义的控制代码
#define erron GetLastError()
....
                //传递启动的I/O控制代码
                if (!( DeviceIoControl(hDevice,START_FILTER,NULL,0,NULL,0,NULL,NULL)))
                {
#ifdef DEBUGMSG
                        printf("XD_CTL_CODE_READONLY DeviceIoControl() GetLastError reports [%d]\n",erron);
                       
#endif
                        CloseHandle(hDevice);
                        return FALSE;
                }

//=================================================================================================
结果DeviceIoControl函数返回错误码87,即ERROR_INVALID_PARAMETER 87 (0x57) The parameter is incorrect.

请指教!

最新回复

错误提示应该是参数问题  详情 回复 发表于 2010-3-11 08:23
点赞 关注

回复
举报

72

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
我觉得有几种可能:
1.这种情况是因为该控制码要求有效的Inbuffer或者Outbuffer。并且,错误的buffer长度也会导致这个错误。
2.设备句柄并不是CD-ROM。
家里没有DDK,看不见help,仅供参考了。
我以前做SCSI的时候,曾经遇到过使用与控制码不匹配的数据结构产生system error 87的。
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
后边的NULL,0,NULL,0,NULL,NULL参数有问题
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

4
 
lpBytesReturned参数不能给NULL,必须给一个DWORD变量的地址接收返回长度。
 
 
 

回复

55

帖子

0

TA的资源

一粒金砂(初级)

5
 
DeviceIoControl(hDevice,START_FILTER,NULL,0,NULL,0,NULL,NULL)
//红色那里有问题,必须放入一个DWORD指针
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

6
 
错误提示应该是参数问题
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表