Hallo Leute,
ich hab mir nen kleines Programm gebastelt mit Client-Server struktur. Nur versuche ich jetzt bei bestimmten Strings funktionen aufzurufen, das macht er aber ned.
Wisst ihr woran das liegt?
Das ist der Server (Auf dem PC werden die Befehle dann ausgeführt)
Und das ist der Client (der die Befehle in form eines Strings gibt)
Nun die Msgboxen mit dem String gibt er aus, aber nicht die Befehle die in den Funktionen vorgegeben sind (in ner eigenen klasse)
Die befehle in den Klassen sind halt solche sachen wie:
ich hab mir nen kleines Programm gebastelt mit Client-Server struktur. Nur versuche ich jetzt bei bestimmten Strings funktionen aufzurufen, das macht er aber ned.
Wisst ihr woran das liegt?
Das ist der Server (Auf dem PC werden die Befehle dann ausgeführt)
VB.NET-Quellcode
- Imports System.Net
- Imports System.Net.Sockets
- Imports System
- Imports Microsoft.Win32
- Public Class Form1
- Dim port As Integer = 6961
- Dim sock As New TcpClient()
- Dim tcpc As New TcpListener(port)
- 'Auf Port hörn
- Private Sub listen()
- Try
- tcpc.Start()
- sock = tcpc.AcceptTcpClient()
- Catch ex As Exception
- End Try
- End Sub
- Private Sub check()
- If sock.Connected = True Then
- sock.SendTimeout = 5000
- Try
- Dim nstream As NetworkStream = sock.GetStream
- Dim bit(sock.ReceiveBufferSize) As Byte
- nstream.Read(bit, 0, CInt(sock.ReceiveBufferSize))
- Dim str As String = System.Text.Encoding.ASCII.GetString(bit)
- Dim id() As String = Split(str, "*", -1, CompareMethod.Text)
- If id(0) = 0 Then
- Dim stri As String = id(1)
- MessageBox.Show(stri)
- If stri = "Shutdown" Then
- testest()
- Call max()
- End If
- End If
- If id(0) = 0 Then
- Dim stri As String = id(1)
- MessageBox.Show(stri)
- MessageBox.Show("Befehl war" & stri)
- If stri = "test" Then
- testest()
- Call max()
- End If
- If stri = "Shutdown" Then
- Call max()
- End If
- End If
- Catch ex As Exception
- check()
- End Try
- End If
- End Sub
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- Me.Visible = True
- While sock.Connected = False
- Try
- listen()
- Catch ex As Exception
- End Try
- End While
- While True
- check()
- End While
- End Sub
- End Class
Und das ist der Client (der die Befehle in form eines Strings gibt)
VB.NET-Quellcode
- Imports System.Net
- Imports System.Net.Sockets
- Public Class Form1
- Dim sock As New TcpClient()
- Dim ip As IPAddress = IPAddress.Parse("127.0.0.1")
- Dim port As Integer = 6961
- Private Sub connect()
- ip = IPAddress.Parse(TextBox1.Text)
- port = 6961
- Try
- sock.Connect(ip, port)
- Catch ex As Exception
- MsgBox("Kann ned zur IP connecten!")
- End Try
- End Sub
- Private Sub dat(ByVal dat As String)
- Dim nstream As NetworkStream = sock.GetStream()
- Dim bit As [Byte]() = System.Text.Encoding.ASCII.GetBytes(dat)
- nstream.Write(bit, 0, bit.Length)
- End Sub
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- End Sub
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- Call connect()
- End Sub
- Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
- dat("0*" + TextBox2.Text)
- End Sub
- End Class
Nun die Msgboxen mit dem String gibt er aus, aber nicht die Befehle die in den Funktionen vorgegeben sind (in ner eigenen klasse)
Die befehle in den Klassen sind halt solche sachen wie: