C# 需要有关基于windows的聊天应用程序的概念

C# 需要有关基于windows的聊天应用程序的概念,c#,concept,C#,Concept,假设如果我想开发一个windows聊天应用程序,那么需要开发一个聊天服务器和一个客户端。开发聊天服务器应用程序后,我们可以在一台机器上运行该应用程序,而聊天客户端将运行另一台电脑。如果这些电脑不在同一网络中,则假设聊天服务器在美国机器上运行,一台聊天客户端在德国机器上运行,另一台在英国机器上运行。在这种情况下,如何使用internet进行通信。所有的中国人都可以访问互联网,所以一个聊天客户端如何登录聊天服务器,两个聊天客户端如何相互通信。我只想知道数据将如何通过聊天服务器从一个客户端传输到另一个

假设如果我想开发一个windows聊天应用程序,那么需要开发一个聊天服务器和一个客户端。开发聊天服务器应用程序后,我们可以在一台机器上运行该应用程序,而聊天客户端将运行另一台电脑。如果这些电脑不在同一网络中,则假设聊天服务器在美国机器上运行,一台聊天客户端在德国机器上运行,另一台在英国机器上运行。在这种情况下,如何使用internet进行通信。所有的中国人都可以访问互联网,所以一个聊天客户端如何登录聊天服务器,两个聊天客户端如何相互通信。我只想知道数据将如何通过聊天服务器从一个客户端传输到另一个客户端。请给我一个概念,或者如果有人给我一个好的基于.net的聊天应用程序的参考,聊天服务器和聊天客户端都会在那里………谢谢

  • 客户端轮询服务的WCF Web服务(简单的基本场景-易于实现,效率不高)

  • WCF双工Web服务,服务器在需要时更新客户端(稍微复杂一点)

  • 基于TCP套接字的解决方案,最难实现,但允许更好的控制。马修·麦克唐纳(Matthew McDonald)的书《Pro Silverlight 3》中有一个很好的例子

  • 客户端轮询服务的WCF Web服务(简单的基本场景-易于实现,效率不高)

  • WCF双工Web服务,服务器在需要时更新客户端(稍微复杂一点)

  • 基于TCP套接字的解决方案,最难实现,但允许更好的控制。马修·麦克唐纳(Matthew McDonald)的书《Pro Silverlight 3》中有一个很好的例子


  • 一般来说?我看不出这与C#有什么关系,但客户机-服务器体系结构是这样的:

    Client <-----> Server
    
    客户端服务器
    
    对于您描述的两个或多个客户机相互通信的地方,您只是在谈论添加多个客户机:

    Client A <----
                  |
                   ----> Server
                  |
    Client B <----
    
    客户端服务器
    |
    
    客户B一般情况?我看不出这与C#有什么关系,但客户机-服务器体系结构是这样的:

    Client <-----> Server
    
    客户端服务器
    
    对于您描述的两个或多个客户机相互通信的地方,您只是在谈论添加多个客户机:

    Client A <----
                  |
                   ----> Server
                  |
    Client B <----
    
    客户端服务器
    |
    
    客户B这里没有什么特别的问题。。。您了解什么是客户机/服务器体系结构吗?你想知道如何在互联网上进行沟通吗?是的,我想知道两个win应用程序如何在互联网上进行沟通……请详细解释。感谢接受率如此之低,可能很难得到答案这里没有具体的问题。。。您了解什么是客户机/服务器体系结构吗?你想知道如何在互联网上进行沟通吗?是的,我想知道两个win应用程序如何在互联网上进行沟通……请详细解释。感谢接受率如此低,可能很难得到答案。我只想在win应用程序中使用socket,通过互联网进行沟通因为像一个聊天服务器这样的两个应用程序将在英国机器上运行,而另一个聊天客户端将在美国机器上运行。因此,socket应用程序如何在互联网上与其他应用程序交互。如果可能,请详细解释……或者你可以给我一个url,从那里我可以了解……谢谢。基本上,你应该有一个“侦听”传入连接的服务器,一旦传入连接被接受,就可以创建服务器端连接客户端,并用于直接与特定的远程客户端通信。我建议你去查阅我提到的那本书,它有一个完整的工作示例。我只想使用win应用程序中的socket,它可以通过互联网相互通信,因为两个应用程序(比如一个聊天服务器)将在英国机器上运行,而另一个聊天客户端将在美国机器上运行。因此,socket应用程序如何在互联网上与其他应用程序交互。如果可能,请详细解释……或者你可以给我一个url,从那里我可以了解……谢谢。基本上,你应该有一个“侦听”传入连接的服务器,一旦传入连接被接受,就可以创建服务器端连接客户端,并用于直接与特定的远程客户端通信。我建议你去看看我提到过的那本书,它有一个完整的工作示例。谢谢你的回复……我只是想知道如何用c语言编写代码,因此,在两台不同机器上运行的两个应用程序可以在互联网上相互交互。如果你能在这方面指导我,我会很高兴的……非常感谢你抽出时间……)谢谢你的回复……我只是想知道如何用c语言编写代码,这样,在两台不同机器上运行的两个应用程序可以通过互联网相互交互。如果你能在这方面指导我,我会很高兴的……非常感谢你抽出时间……)