• 4902阅读
  • 3回复

在carbide c++中使用UDP通信的问题,求高手解答 [复制链接]

上一主题 下一主题
离线hbzyn1
 
只看楼主 倒序阅读 楼主  发表于: 2010-06-01
— 本帖被 XChinux 执行加亮操作(2010-09-06) —
在carbide c++中使用udpSocket进行通信。我看到Qt有自带的程序,D:\Qt\4.6.2\examples\network\broadcastreceiver和D:\Qt\4.6.2\examples\network\broadcastsender 但是问题是这两个程序跑起来之后,在接收端的label上不显示datagram.data()这个内容,这是为什么呢?

然后我按照例子,自己写了个类似的程序。我现在两个手机直接用QUdpSocket通信,发送方发送了一个QString 型的数据,接收方接收下来之后存入一个QString 型的变量里,然后也是在QLineEdit 中显示,同样也是没有结果。我进行了进一步的调试,发现,如果单步执行的话,QString 类型的变量里是有接收到的数据的,同时在控制台输出能看到结果,但是一旦连续运行,就接收不到结果,变量中永远是空串,如果我在单步运行期间接收到的串也能够显示出来,这是为什么呢?
[ 此帖被XChinux在2010-09-06 23:21重新编辑 ]
离线umbralla
只看该作者 1楼 发表于: 2010-06-17
我用的过程中也出现了和你一样的问题,后来发现udpSocket.pendingDatagramSize()这句话的返回值有问题,每次都是负值,你用一个变量替换了看看能不能接收到数据
离线hbzyn1
只看该作者 2楼 发表于: 2010-06-21
对,我后来也是按照这样的方法解决的,但是不知道为什么,呵呵。谢谢你了哈!
离线陈素
只看该作者 3楼 发表于: 2010-07-26
能说下QUdpSocket通信的问题吗?我的一直是在模拟上面能跑,但是一到真机上面就不可以了,我的邮箱是chensu0526@163.com,谢谢
快速回复
限100 字节
 
上一个 下一个