两个相同的应用程序,在本地主机上通过TCP套接字连接进行通信



c#/XAML .NET WPF…两个应用程序都需要具有相互连接的能力,并且都应该具有侦听器。我该如何做到这一点,因为我知道通常TCP套接字是客户端/服务器,我需要的基本上是两个服务器作为客户端?这可能吗?

首先,很抱歉这个答案没有代码。我还不是c#开发人员。我正在处理一个非常类似的情况,这将是我第一次尝试使用这门语言。

我的情况我需要两份相同的应用程序彼此交谈,但其中一个总是会首先启动连接。这是一个非常基本的游戏,两名玩家轮流进行。我不能硬编码ip,因为即使不在本地主机上,它们也需要能够交谈。我的解决方案是:

  1. 一个用户选择"开始游戏">
  2. App 1将打开一个套接字并开始监听。这使它成为服务器的角色。
  3. App 1将显示IP和端口#。
  4. 用户二选择加入游戏
  5. 用户2输入提供的套接字信息。
  6. App 2将打开一个套接字进行发送,从而成为客户端。一旦连接完全建立,这些套接字将被移交给处理实际游戏的代码。这是可能的,因为无论谁开始,双方的游戏玩法都是相同的。

对于您的场景,您可以跳过IP和Port的显示。双方都将开始倾听并发送信息。一旦建立了联系,他们就可以停止做不需要做的事情。例如,如果成功打开客户端套接字,它将停止侦听,因为它不再需要处于服务端角色。

相关内容

最新更新