通过串口发送绝对0的问题!

jbzheng 2005-08-23 04:12:32
我在做一个用调制解调器发短信的软件,现在被一个问题卡住了:

调制解调器收发短信的内容使用unicode编码,英文字母和数字等常用的半角字符转到unicode以后,一个字节都变成两个字节,多出的一个字节是0x00(绝对0),这样,发送的内容里就可能存在绝对0。
现在的问题是发送汉字都好好的,但是一发送半角字符(带有绝对0),第一个出现的绝对0以后的内容都无法发送出去,就像字符串遇到绝对0被截断了一样。

我用的是SPCOM和Victor两种控件,都是一样的结果。我又使用WriteFile直接写串口发送指令,结果还是一样!我已经把串口的传输模式改成二进制的了,没有用!

我用调制解调器自带的软件发过短信,可以发送半角字符啊!问题出在哪里呢?

各位高手帮我想想办法吧!多谢啦!
...全文
213 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
cczlp 2005-08-25
  • 打赏
  • 举报
回复
0可以发,估计是你程序的问题。
jbzheng 2005-08-25
  • 打赏
  • 举报
回复
是MODEM协议的问题!大家均分吧。
zhuia 2005-08-24
  • 打赏
  • 举报
回复
我也用Victor控件,也能发0x00。你只要指定发送字符串的长度就行了。
dxqxiaoqiang 2005-08-24
  • 打赏
  • 举报
回复
你把代码贴出来吧,估计你是按字符串来发的。
dxqxiaoqiang 2005-08-24
  • 打赏
  • 举报
回复
估计是你的协议定义错了,0发不出去的程序还玩什么呀~
setdefault 2005-08-23
  • 打赏
  • 举报
回复
不会有这样的问题,应该检查一下自己的代码。
有个“串口精灵”好像不错
jbzheng 2005-08-23
  • 打赏
  • 举报
回复
我试过使用char*直接发,但是收到的内容全是乱码!没办法,只能转换成unicode编码发送才会正常接收!
jbzheng 2005-08-23
  • 打赏
  • 举报
回复
我想使用串口监测软件看看调制解调器自带的软件是怎么编码的,可是用ComSpy不管用!不知是不是因为调制解调器本身是USB接口的缘故。大家知道有什么更好的串口监视软件吗?
萧山夜雨 2005-08-23
  • 打赏
  • 举报
回复
用LPCSTR 就是char* 不要用unicode的字符。照样可以发汉字和其它字符啊。

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧