在用com控件时,有个选项可以设置发送方式为二进制或者字符串形式发送,用api如何用?
是不是需要自己将要发送的字符串转换为二进制串发送?

解决方案 »

  1.   

    api 不用设值,只要像写文件一样 WriteFile 就行了.
      

  2.   

       m_comm.SetInputMode(1); //二进制发送模式
       CByteArray bytOutArr;
      bytOutArr.Add(0x0); //给数组赋值
      bytOutArr.Add(0x1);
      bytOutArr.Add(0x2);
      bytOutArr.Add(0x3);
       bytOutArr.Add(0x4);
      COleVariant varOut;
      varOut=COleVariant(bytOutArr); //将数据转换为变体数据类型
      m_comm.SetOutput (varOut); //发送数据--------
    需要将你要发送的字符串转成二进制数组,上面的例子是手工添加的
      

  3.   

    API中使用 SetCommConfig 或 SetCommState 
    DCB结构体中的 DWORD fBinary: 1;          // binary mode, no EOF check
      

  4.   

    补充 
    fBinary 
    Specifies whether binary mode is enabled. The Win32 API does not support nonbinary mode transfers, so this member must be TRUE. Using FALSE will not work.