我能在mscomm.input里面读取数据,当我showmessage(mscomm.input)的时候,显示的都是乱码汉字啥的,我是从上海耀华磅机上的232口读出的数据,应该在程序里面显示出当前重量,可我怎么在乱码重提取我想要的重量数据那

解决方案 »

  1.   

    >>,显示的都是乱码汉字啥的
    看协议,用十六进制处理
      

  2.   

    不明白您说的
    MSCOMM的INPUTMODEL属性应该设置为0TEXT模式还是应该是1 二进制模式
    用TEXT模式SHOWMESSAGE出来就是汉字的乱码
    如何用16禁止处理?
      

  3.   

    首先你用mscomm.input是用十六进制数,然后用协议把用十六进制转换过来就行了
      

  4.   

    首先你用mscomm.input是十六进制数,然后用协议把用十六进制转换过来就行了
      

  5.   

    什么破FAQ,点了一下居然说要扣两分可用分,协议是人定的,一般都有消息头尾的,哪能随便就显示汉字?
      

  6.   

    使用二进制读取数据,然后用inttohex函数转换一下就可以了,但我要说的是,如果是出现乱码,那么说明这个磅秤不是用asc码通讯的,而是RTU模式,所以单字节范围内的数值可能超过了7F,超过了asc码表的数值范围,被认为是汉字或者其它语言的字符了,使用mscomm很有可能识别不出来,我现在也在找这个问题的解决方法,好像VB里可以解决,但在delphi里,我还没找到这个方法,希望你找到以后能高手我一下,谢谢了