Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt TCP网络和桌面应用程序_Qt_Sockets_Networking_Tcp_Sfml - Fatal编程技术网

Qt TCP网络和桌面应用程序

Qt TCP网络和桌面应用程序,qt,sockets,networking,tcp,sfml,Qt,Sockets,Networking,Tcp,Sfml,我做了一个两人“画画”,就像黑屏,你只用一种颜色画画,就是这样。你的朋友也这么做。我用Qt C++作为绘图部分的GUI和SFML。对于网络,我在这方面是个新手,我遵循了SFML指南中关于TCP套接字的内容,目前它的工作非常好。唯一的问题是,我必须打开一个端口作为服务器,这样我的朋友就可以用我的ip和我打开的端口连接我。当我使用它的时候它是好的,但是如果我想和每个人分享这个程序,当一些人不能打开端口的时候,他们会有不好的时间 是否有其他连接方式而不打开服务器端口,或者是否有每台计算机都允许您使用的

我做了一个两人“画画”,就像黑屏,你只用一种颜色画画,就是这样。你的朋友也这么做。我用Qt C++作为绘图部分的GUI和SFML。对于网络,我在这方面是个新手,我遵循了SFML指南中关于TCP套接字的内容,目前它的工作非常好。唯一的问题是,我必须打开一个端口作为服务器,这样我的朋友就可以用我的ip和我打开的端口连接我。当我使用它的时候它是好的,但是如果我想和每个人分享这个程序,当一些人不能打开端口的时候,他们会有不好的时间


是否有其他连接方式而不打开服务器端口,或者是否有每台计算机都允许您使用的端口。我们尝试了端口80,但似乎不起作用

您有几种选择:

  • 为不同的客户端打开不同的端口

  • 在不同线程的同一端口上为它们提供服务

  • 在不同的过程中在同一端口上为它们提供服务

  • 以异步方式在同一端口上为它们提供服务


啊,你不是真的了解我,这个节目只有两名玩家,不会更多。一个人成为服务器,他的朋友成为客户,就是这样。服务器端输入要侦听的端口,客户端输入服务器的ip以及服务器正在侦听的端口。例如,我打开了53000端口,我可以成为服务器而不会有任何问题,但有些人不知道如何打开端口,我能不能将端口设置为在每台计算机上都能工作的数字?@daktari:你的问题对我来说没有意义。试着重新措辞。每个端口在没有防火墙和类似规则的每台计算机上都能工作。如果我不使用53000,我的程序就无法连接,因为我的调制解调器中只有手动打开的端口是53000。你转到192.168.0.1,然后在你的调制解调器->端口转发->53000 TCP中,我输入我的本地IP,如192.168.0.13,然后你也在Windows中向防火墙添加相同的端口,然后端口53000就可以工作了。你想研究一下,但即使你不是网络新手,这也是一个很难解决的问题。