2695|7

84

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

SOS,在线等,呼叫驱动带入CString的问题 [复制链接]

各位弟兄:
我呼叫驱动这样呼叫的:

  1. typedef  struct  {
  2.         CString DataType;
  3.         CString number_HEX;
  4. }DATA_GETDATA_INFO;
  5. DATA_GETDATA_INFO        GETDATA;

  6. int  pfnGET_Data(CString bs1,CString bs2)
  7. {
  8.         if(hFile_PLC == INVALID_HANDLE_VALUE) return -1;
  9.         GETDATA.DataType=bs1;
  10.         GETDATA.number_HEX=bs2;
  11.         DeviceIoControl(hFile_PLC,  IOCTL_GET_DATA, &GETDATA, sizeof(GETDATA), NULL, 0, NULL, NULL);
  12.         (省略)       
  13. }
复制代码


然后驱动中这样写的:

  1. typedef  struct  {
  2.         CString DataType;
  3.         CString number_HEX;
  4. }DATA_GETDATA_INFO;
  5. DATA_GETDATA_INFO        GETDATA;

  6. bool HPI_IOControl( DWORD context, DWORD code, UCHAR *pInBuffer,
  7.     DWORD inSize,UCHAR *pOutBuffer, DWORD outSize,DWORD *pOutSize   )
  8. {
  9. (省略)
  10.         case  IOCTL_READ_DATA:
  11.                 CeSafeCopyMemory(&GETDATA, pInBuffer, sizeof(GETDATA));
  12.                 DataType=GETDATA.DataType;
  13.                 number_HEX=GETDATA.number_HEX;       
  14. (省略)                       
复制代码

--------------
这样主程序的bs1,bs2可以正确对应到驱动中的DataType和number_HEX吗?
我总觉得这样怪怪的

各位推我一把吧!! ^^

最新回复

up  详情 回复 发表于 2009-10-8 21:45
点赞 关注

回复
举报

79

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
手误IOCTL_READ_DATA应该是IOCTL_GET_DATA,贴的时候没整理好请见谅.

带入两个CString到驱动的问题,在线等各位弟兄的协助.
感恩啦)))))
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
如果驱动支持MFC类,值的传入就没有问题

但是,在驱动中,最好不要MFC类库
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

4
 
引用 2 楼 91program 的回复:
如果驱动支持MFC类,值的传入就没有问题

但是,在驱动中,最好不要MFC类库


用了mfc类库会有哪些不好,请指教!
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

5
 
MFC 封装级别太搞了!?  我的理解, 速度是个问题!
--------
或者其他的什么

驱动用用 BYTE  |  unsigned char 不可以吗   非得用CString
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

6
 
unsigned char *
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

7
 
驱动中不要使用MFC。我记得有个ce::wstring
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

8
 
up
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
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
快速回复 返回顶部 返回列表