Netzwerkverbindung aufbauen

Hi gibt es eine Möglichkeit Winsock in C# zu verwende?

oder muss ma sich selbst in classen was zusammenreimen?

Wäre nett wenn jemand ein Bsp, wenn möglich mit winsock, anfügen würde!

Mfg Florian Bogner

hallo florian,

ich habe ein beispiel, allerdings in vb.net
einmal der client:

Imports System.Net.Sockets
Imports System.Text
Class TCPCli
 Shared Sub Main()

 Dim tcpClient As New System.Net.Sockets.TcpClient()
 tcpClient.Connect("127.0.0.1", 8000)
 Dim networkStream As NetworkStream = tcpClient.GetStream()
 If networkStream.CanWrite And networkStream.CanRead Then
 ' Do a simple write.
 Dim sendBytes As [Byte]() = Encoding.ASCII.GetBytes("Is anybody there")
 networkStream.Write(sendBytes, 0, sendBytes.Length)
 ' Read the NetworkStream into a byte buffer.
 Dim bytes(tcpClient.ReceiveBufferSize) As Byte
 networkStream.Read(bytes, 0, CInt(tcpClient.ReceiveBufferSize))
 ' Output the data received from the host to the console.
 Dim returndata As String = Encoding.ASCII.GetString(bytes)
 Console.WriteLine(("Host returned: " + returndata))
 Else
 If Not networkStream.CanRead Then
 Console.WriteLine("cannot not write data to this stream")
 tcpClient.Close()
 Else
 If Not networkStream.CanWrite Then
 Console.WriteLine("cannot read data from this stream")
 tcpClient.Close()
 End If
 End If
 End If
 ' pause so user can view the console output
 Console.ReadLine()
 End Sub
End Class

hier der server:

Imports System.Net.Sockets
Imports System.Text
Class TCPSrv
 Shared Sub Main()
 ' Must listen on correct port- must be same as port client wants to connect on.
 Const portNumber As Integer = 8000
 Dim tcpListener As New TcpListener(portNumber)
 tcpListener.Start()
 Console.WriteLine("Waiting for connection...")
 Try
 'Accept the pending client connection and return a TcpClient initialized for communication. 
 Dim tcpClient As TcpClient = tcpListener.AcceptTcpClient()
 Console.WriteLine("Connection accepted.")
 ' Get the stream
 Dim networkStream As NetworkStream = tcpClient.GetStream()
 ' Read the stream into a byte array
 Dim bytes(tcpClient.ReceiveBufferSize) As Byte
 networkStream.Read(bytes, 0, CInt(tcpClient.ReceiveBufferSize))
 ' Return the data received from the client to the console.
 Dim clientdata As String = Encoding.ASCII.GetString(bytes)
 Console.WriteLine(("Client sent: " + clientdata))
 Dim responseString As String = "Connected to server."
 Dim sendBytes As [Byte]() = Encoding.ASCII.GetBytes(responseString)
 networkStream.Write(sendBytes, 0, sendBytes.Length)
 Console.WriteLine(("Message Sent /\> : " + responseString))
 'Any communication with the remote client using the TcpClient can go here.
 'Close TcpListener and TcpClient.
 tcpClient.Close()
 tcpListener.Stop()
 Console.WriteLine("exit")
 Console.ReadLine()
 Catch e As Exception
 Console.WriteLine(e.ToString())
 Console.ReadLine()
 End Try
 End Sub
End Class

hoffe es hilft

gruß

rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Is zwar net, aber ich hab keine Ahnung wie man das in C# importiert! Müssen das Progie aber von der schule aus in C# schreiben! Und deshalb! Is a projekt!