BB via TCP mit VB.net verbinden [gelöst]
Übersicht

![]() |
TimBoBetreff: BB via TCP mit VB.net verbinden [gelöst] |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich habe mit Sockets folgenden VB Code zusammengeschustert:
Code: [AUSKLAPPEN] Imports System.Net.Sockets
Imports System.IO Imports System.Threading Public Class Form1 Dim listener As New TcpListener(4444) ' <- Server Dim client As TcpClient Dim message As String = "" 'Initialisierung Private Sub Form1_Load1(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim listthread As New Thread(New ThreadStart(AddressOf listening)) listthread.Start() End Sub Private Sub listening() listener.Start() End Sub 'Beenden Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) listener.Stop() End Sub 'Netzwerk updaten Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick 'Prüft auf neue Verbindungen If listener.Pending = True Then client = listener.AcceptTcpClient() Dim v As Verbindungen = New Verbindungen(client) Debug.Print("-- Neue Verbindung") End If 'Prüft bestehende Verbindungen Verbindungen.Update() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click For Each v As Verbindungen In Verbindungen.List MessageBox.Show(v.client.Connected) Next End Sub End Class '---------------------------------------------------------------------------------------------- '---------------------------------------------------------------------------------------------- '---------------------------------------------------------------------------------------------- Public Class Verbindungen 'Variablen Public client As TcpClient Private SpielerName Private Reader As StreamReader Private Writer As StreamWriter Public Shared List As New List(Of Verbindungen) Public Shared Sub Update() For Each v As Verbindungen In Verbindungen.List While v.Reader.Peek > -1 Select Case v.Reader.Read Case 1 'Servername anfragen Case 2 'Spieler umbenennen v.SpielerName = v.Reader.ReadLine() Debug.Print("in " & v.SpielerName & " umgenannt") End Select End While Next End Sub Public Sub New(ByVal Client) List.Add(Me) ' Instanz zur statischen Liste hinzufügen Me.client = Client Me.Reader = New StreamReader(Me.client.GetStream()) Me.Writer = New StreamWriter(Me.client.GetStream()) End Sub End Class Wenn ich OpenTCPStream in Blitz 3D ausführe, dann hängt sich die ganze Oberfläche der VB-Form auf. Und nein, ich möchte nicht auf VB umsteigen, sondern möchte einfach einen relativ schnellen Server schreiben. Danke schonmal ! TimBo Client.Avaible war das Schlüsselwort. |
||
mfg Tim Borowski // CPU: Ryzen 2700x GPU: Nvidia RTX 2070 OC (Gigabyte) Ram: 16GB DDR4 @ 3000MHz OS: Windows 10
Stolzer Gewinner des BCC 25 & BCC 31 hat einen ersten Preis in der 1. Runde beim BWInf 2010/2011 & 2011/12 mit BlitzBasic erreicht. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group