495417
驱动牛犊
驱动牛犊
  • 注册日期2002-02-26
  • 最后登录2002-06-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1157回复:6

关于VXD中的DeviceComtrol()

楼主#
更多 发布于:2002-06-02 15:27
在使用VXD时,想用DeviceControl()给应用程序返回一串数,请问怎么办?
我使用了*(unsigned char*)pDIOCParams->dioc_OutBuf=data[0];
能传回一个数,但若用
*(unsigned char*)pDIOCParams->dioc_OutBuf=data;
则出现2个编译错,请问为什么?
肥鸟
yanghui
驱动牛犊
驱动牛犊
  • 注册日期2002-01-29
  • 最后登录2009-10-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-06-09 16:15

(unsigned char*)pDIOCParams->dioc_OutBuf++;
*(unsigned char*)pDIOCParams->dioc_OutBuf=data[1];
.......
495417
驱动牛犊
驱动牛犊
  • 注册日期2002-02-26
  • 最后登录2002-06-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-06-08 21:25
请问如何才能将指针dioc_OutBuf递增,能给出代码吗?
谢谢!
肥鸟
yanghui
驱动牛犊
驱动牛犊
  • 注册日期2002-01-29
  • 最后登录2009-10-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-06-07 16:24
实际上你自己就已经实现了你所需的功能,你的这行代码是读取第一个元素:
*(unsigned char*)pDIOCParams->dioc_OutBuf=data[0];
将指针dioc_OutBuf递增,就可读取第二个元素,依次类推,至于循环读取的次数由该缓冲区的大小决定
495417
驱动牛犊
驱动牛犊
  • 注册日期2002-02-26
  • 最后登录2002-06-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-06-06 15:21
我想传回的是一组数,而非一个数
请问怎么办?
肥鸟
zdhe
驱动太牛
驱动太牛
  • 注册日期2001-12-26
  • 最后登录2018-06-02
  • 粉丝0
  • 关注0
  • 积分72362分
  • 威望362260点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
5楼#
发布于:2002-06-02 19:10
返回的字节数要设定的。
pDIOCParams-〉dioc_bytesret

[编辑 -  6/2/02 by  zdhe]
znsoft
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2023-10-25
  • 粉丝300
  • 关注6
  • 积分910分
  • 威望14796点
  • 贡献值7点
  • 好评度2410点
  • 原创分5分
  • 专家分100分
  • 社区居民
  • 最爱沙发
  • 社区明星
6楼#
发布于:2002-06-02 15:44
你的第二种不是把指针传给了char?
肯定不行的呀

*(unsigned char*)pDIOCParams->dioc_OutBuf=*data;
试试?其实它和第一种的意思是一样的
http://www.zndev.com 免费源码交换网 ----------------------------- 软件创造价值,驱动提供力量! 淡泊以明志,宁静以致远。 ---------------------------------- 勤用搜索,多查资料,先搜再问。
游客

返回顶部