《mscomm.docxVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《mscomm

VS2010中MFC对话框和单文档程序使用MSCOMM32.OCX串口ActiveX控件(XP)(2012-02-29 21:35:21)转载▼标签:?vs2010?mscomm32?串口?activex?控件1.下载MSCOMM32.OCX放到C:\windows\system32下2.regsvr32 c:\windows\system32\mscomm32.ocx 注册3.vs2010中建一个基于对话框的MFC工程4.添加类——ActiveX控件中的MFC类——Microsoft Communications Control, version 6.01.05.在资源编辑器中,右键点对话框,插入ActiveX控件,将串口控件插入到对话框,控件ID设为IDC_MSCOMM6.右键控件,添加变量m_cComm,添加事件处理程序。在OnInitDialog()函数中加入以下初始化代码{?if ( m_cComm.get_PortOpen() )????// 获取打开状态?m_cComm.put_PortOpen(FALSE);?m_cComm.put_CommPort( 8 );????//选择COM8?m_cComm.put_InputMode( 1 );???// 二进制方式?m_cComm.put_InBufferSize( 1024 );??// 输入缓存?m_cComm.put_OutBufferSize( 512 );??// 输出缓存?m_cComm.put_Settings(TEXT(38400,n,8,1));???//?串口设置?if ( !m_cComm.get_PortOpen() )?{?m_cComm.put_PortOpen(TRUE);?m_cComm.put_RThreshold(1);????// 有1个字符就触发接收事件?m_cComm.put_InputLen(0);??????// 设置接收区数据长度为0,表示全部接收?m_cComm.get_Input();??????????// 预读缓冲区以清除残留数据?}?else?AfxMessageBox(TEXT(打开端口失败!), MB_ICONSTOP, 0);}?在事件函数中加入以下代码,m_strRecvData是与接收编辑框关联的CString变量。{?// TODO: 在此处添加消息处理程序代码?VARIANT variant_inp;?COleSafeArray safearray_inp;?long len, k;?byte rxdata[512];?CString strtemp;?if ( m_cComm.get_CommEvent() == 2 )?{?variant_inp = m_cComm.get_Input();????//读缓冲区消息?safearray_inp = variant_inp;????//变量转换?len = safearray_inp.GetOneDimSize();????// 得到有效的数据长度?for ( k = 0; k len; k++ )?{?safearray_inp.GetElement(k, rxdata+k);?}?for ( k = 0; k len; k++ )?{?char bt = *(char*)(rxdata+k);????// 字符型?strtemp.Format(L%c, bt);?m_strRecvData += strtemp;?}?}?UpdateData(FALSE);}VC++ 读取和保存文件对话框及默认目录!void Openfile(){// TODO: Add your control notification handler code here//显示文件打开对话框CFileDialog dlg(TRUE, EC, *.aes,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,Aes Files(*.aes)|*.aes);?if ( dlg.DoModal()!=IDOK ) return;//获取文件的绝对路径CString sFileName=dlg.GetPathName();}?void Savefile(){//显示文件保存对话框CFileDialog dlg(FALSE, AES, D_Aes,OFN_HIDEREADONLY| OFN_OVERWRITEPROMPT,Aes Files(*.aes)|*.aes);?if ( dlg.DoModal()!=IDOK ) return;//获取文件的绝对路径CString sFileName=dlg.GetPathName();}如果打开对话框时,不

文档评论(0)

yingrong + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档