找回密码
 加入
搜索
查看: 1742|回复: 6

[已解决]TCPRecv函数请教

[复制链接]
发表于 2009-4-20 15:32:46 | 显示全部楼层 |阅读模式
解决方法在:http://autoitx.com/forum.php?mod ... &extra=page%3D1
刚接触到TCPRecv和TCPSend这二个函数!为了学习下,准备做成局域网消息用,相当呼叫网管那种
发送端如果输入英文,接收正确定,如果中文,则只显示一半也就是字符不对!
另外就是不知道怎么获取是发送消来的IP或其它信息!好保存到配置文件中做记录,以便查看!
请师傅们指点下!
在帮助的中例子中
$recv = TCPRecv( $Socket, 2048)  ;接收内容
中间这个2048为最大返回量(定义返回是接收的最大字符数. )
但是改得再大,在用tcpsend发送中文字符时,都会少一半,英文都可以!
试过把发送的消息转为二进制,然后接收时把二进制转为中文字符串同样问题!
如图显示

[ 本帖最后由 jycel 于 2009-4-21 15:07 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2009-4-20 15:59:23 | 显示全部楼层
在UDP或TCP中都存在这现像,字符问题还是存在!不知道怎么解决!

[ 本帖最后由 jycel 于 2009-4-21 12:29 编辑 ]
 楼主| 发表于 2009-4-20 19:03:30 | 显示全部楼层
期待高手指点

[ 本帖最后由 jycel 于 2009-4-21 12:30 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2009-4-21 12:33:15 | 显示全部楼层
想到一个方法
在发送的消息后面加N个空字符,可以解决!
但这不是真正解决方法!
~~
发现尽是自己在说,论坛的师傅们指点下啊

[ 本帖最后由 jycel 于 2009-4-21 12:34 编辑 ]
发表于 2009-4-22 15:17:28 | 显示全部楼层
也发现这个问题,后面加空格就正常了
发表于 2009-10-20 14:35:24 | 显示全部楼层
昨天我发了贴,有人回答说先把字符串转换为二进制发送,然后在接受端再转回来可以解决中文字符丢失问题,确实有效。
 楼主| 发表于 2009-10-20 18:58:22 | 显示全部楼层
呵呵!此问题早已解决!当时我对这方面啥也不懂!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-18 19:28 , Processed in 0.077912 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表