目前位置: VCer资源中心 >>> VCer论坛 >>> 技术问答

[本帖已阅读2382次 分值2 回复1次] 张贴资源 发回信箱 控制面板

MSComm串口通讯的又一问

提供者:tomatoman 张贴时间:2004-07-24 09:43:44.0 出处:vcer.net 作者:不祥

MSComm串口通讯的又一问(2004-07-24 09:43:44.0)


tomatoman


 
级别: VCer小兵
头衔: VCer会员

经验: 47
作品: 3
分会: 西南分会
注册: 2004-07-07 22:45:05.0
登录: 2004-11-18 13:47:09.0
为什么传送文字时就是识别不了啊。MSDN上说可以用TCHAR代替char.我加了"TCHAR.H"头文件后,用TCHAR代替char.但是还是乱码请大虾帮忙。

部分程序如下:

void CSCommTestDlg::OnFilestart()

{

    CFile file;

    CFileStatus  filestatus;

//    int flag1=1;//标记

    CString string;

    CString str="";

    CString filestring;

    CString sendstring="";

    if(m_sendfile=="No File!")

        MessageBox("请输入正确的文件名和路径!","错误",MB_ICONERROR);

     else

    {

            if(CFile::GetStatus(m_sendfile,filestatus))

      {

         char  *pfile=m_sendfile.GetBuffer(0);

         file.Open(pfile,CFile::modeRead,NULL);

              file.SeekToBegin();

         TCHAR   pedit;//这里有问题

         int leng=file.GetLength();

          for(int j=0;j<leng;j++)

         {

                file.Rea(&pedit,1);///////////从文件中逐个读取字

         }

         file.SeekToBegin();

         filestring="";

         for (int m=0;m<leng;m++)

                {      

             file.Read(&pedit,1);

                    filestring+=pedit;

               }

               char *str=filestring.GetBuffer(0);

                long k=strlen(filestring);

               

    for( int filecount=0;filecount<k;filecount=filecount+2)

    {

    int ij=filecount;

    sendstring=str[ij];

    sendstring+=str[ij+1]

          m_ctrlComm.SetOutput(COleVariant(sendstring));

                            

    }

                   

    }

  }

}

注:转载文章需注明来源:VCer.net 文章地址:http://vcer.net/2832.html

  如果你觉得VCer.net不错,而且你愿意为VCer.net捐赠一元钱,那么点击后面的捐赠按钮吧:) vcer.net捐赠

[回复该贴] [加入个人书签]

re:MSComm串口通讯的又一问
代码太乱,建议采用“代码格式”。

bluejoe 于 2004-07-27 08:37:20.0 编辑 [回复该贴]