2010-04-09 64 views
-3

我想做一个P2P聊天客户端,我希望它做的就是能够发送文本到每个对端。帮忙做一个C#P2P聊天程序

我看着聊天客户端从这个例子: http://www.geekpedia.com/tutorial239_Csharp-Chat-Part-1---Building-the-Chat-Client.html

,我想知道,如果它可以被转换成一个P2P程序? 如果是这样,它会怎么样,有人可以提供一些代码,因为它会帮助很多。

如果它不能如何做一个非常简单的p2p聊天程序?代码和示例将非常有帮助。

顺便说一句我没有看这篇文章,但它并没有帮助我: http://msdn.microsoft.com/en-us/library/ms751502.aspx

+2

这超出了StackOverflow问题的范围。 – SLaks 2010-04-09 18:29:06

+0

-1:这不是一个问题,这是一个请求。 – ANeves 2010-04-09 18:54:50

回答

-2

对于P2P,你需要使用UdpClient代替的TcpClient。谷歌应该从这里帮助你:)

编辑:对不起,我在这个答案做出错误的假设。如果你想继续使用TCP,那就好了。而不是创建一个单独的服务器应用程序,请将服务器代码添加到您的客户端应用程序,以便发送者或接收者充当服务器。

+1

没必要为P2P应用程序使用UDP。 – TJMonk15 2010-04-09 18:31:09

+0

为什么UDP在这种情况下更好?你可以发表一些参考吗? – IVlad 2010-04-09 18:33:44

+0

根据您的方案,您可以同时使用TCP和UDP。如果其数据传输不能承受数据丢失,那么TCP更适合。如果您正在传输音频或视频,并且可以容忍一定数量的数据丢失,那么您可以使用UDP,因为它不能保证可靠的数据传输,因此速度更快。 – jaxvy 2010-04-09 18:36:09

0

我做了一次类似的项目,只使用蓝牙而不是互联网。
我的聊天不是IM,因为它只允许两个人交谈,但我们通过在brydgesk的编辑中使用技巧并让客户端('talker')和服务器('listener')得到它的工作。在同一个应用程序中,以这种方式,服务器只将接收到的消息发送给本地客户端,而不是转播到所有连接。

希望这一点是有帮助的,我不认为这是真正的地方来帮助你写出整个应用程序。

+0

感谢它确实帮助我理解,我并没有真的要求在这里写出一大块代码,只是我能做的一小部分。 – 2010-04-09 19:06:48