使用Visual Basic 2013和简单的tcp客户端/服务器来实现局域网游戏

时间:2015-06-14 03:56:17

标签: vb.net tcp udp lan

我可以找到的所有Visual Basic Net和up都是聊天应用程序。它们不适合我,因为我正在尝试制作局域网多人桌面游戏,所有示例都可以直接在客户端和/或服务器上输入。我需要通过其他表单访问客户端/服务器。我似乎无法弄清楚如何实现这一目标。每次我尝试任何一个,我甚至不能通过客户端上的公共子发送文本告诉它所以发送数据到服务器,否则数据到达发送点,但不是。我是自学成才,但这让我感到厌倦。

1 个答案:

答案 0 :(得分:0)

  

如果我在客户端中创建子公共共享子,那么它就不能   访问其他任何东西。

您可以将Client类的实例存储在主窗体的共享变量中:

Public Class Form1

    Public Shared myClient As New Client

End Class

现在,您可以使用以下方式从应用程序中的任何位置访问它:

Form1.myClient.Send(...)

客户端中的潜艇不需要共享。

*共享实例不一定必须在您的表单中。您可以为此目的创建一个虚拟类:

Public Class Communication

    Public Shared myClient As New Client

End Class

同样,可以从任何地方访问:

Communication.myClient.Send(...)

*明确使用VB.Net,您可以使用模块。使用此方法,实例将声明为Public而不使用Shared关键字:

Public Module Module1

    Public myClient As New Client

End Module

现在,您只需在应用程序的任何位置使用myClient.Send(...),而无需在任何内容前加上它。使用Module方法,.Net实际上是为您在幕后将所有内容转换为具有共享成员的类。