请教一个关于DeviceIoControl函数的问题

yphuan 2003-07-03 04:03:14
我想发送一个控制码给驱动程序,其中将打开的串口名称传递给过滤器驱动程序,以便于将过滤器设备对象附加到串口设备对象之上。部分代码如下
DWORD dw;
CString s;
HANDLE handle;
s.Format(_T("\\??\\COM%d"),m_Port);//m_Port=1、2、3...
BOOL res=DeviceIoControl(hDevice,IOCTL_SERMON_STARTMONITOR,(PVOID) (LPCTSTR) s,(s.GetLength()+1)*sizeofWCHAR),&handle,sizeof(MHANDLE),&dw,NULL);
其中hDevice是CreateFile返回的设备对象句柄。
但是程序运行时,返回的res总是不正确,就是函数没有成功返回,GetLastError说参数不正确,我实在看不出来哪个参数不正确。
请教究竟应该怎么写?
谢谢!
...全文
91 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

21,619

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧