Guten Tag,
ich wollte wissen
ob ich das TUtorial vom Sourcecode austausch auch als ASP Server benutzen kann
ich möchte es gerne auf meinen Webspace legen und dann über den Webspace
einen Chat betreiben, könnte jemand mir da helfen??
Der Bisherige Code für den Server:
Würde mich sehr Freuen könntet ihr mir helfen
Mfg
confix
ich wollte wissen
ob ich das TUtorial vom Sourcecode austausch auch als ASP Server benutzen kann
ich möchte es gerne auf meinen Webspace legen und dann über den Webspace
einen Chat betreiben, könnte jemand mir da helfen??
Der Bisherige Code für den Server:
Visual Basic-Quellcode
- Imports System.Net.Sockets
- Imports System.IO
- Imports System.Net
- Partial Public Class _Default
- Inherits System.Web.UI.Page
- Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
- End Sub
- Private Server As TcpListener
- Private client As New TcpClient
- Private ipendpoint As IPEndPoint = New IPEndPoint(IPAddress.Any, 8000) ' eingestellt ist port 8000. dieser muss ggf. freigegeben sein!
- Private list As New List(Of Connection)
- Private Structure Connection
- Dim stream As NetworkStream
- Dim streamw As StreamWriter
- Dim streamr As StreamReader
- Dim nick As String ' natürlich optional, aber für die identifikation des clients empfehlenswert.
- End Structure
- Private Sub SendToAllClients(ByVal s As String)
- For Each c As Connection In list ' an alle clients weitersenden.
- Try
- c.streamw.WriteLine(s)
- c.streamw.Flush()
- Catch
- End Try
- Next
- End Sub
- Sub Main()
- Label1.Text += vbNewLine & "Der Server läuft!"
- server = New TcpListener(ipendpoint)
- server.Start()
- While True ' wir warten auf eine neue verbindung...
- client = server.AcceptTcpClient
- Dim c As New Connection ' und erstellen für die neue verbindung eine neue connection...
- c.stream = client.GetStream
- c.streamr = New StreamReader(c.stream)
- c.streamw = New StreamWriter(c.stream)
- c.nick = c.streamr.ReadLine ' falls das mit dem nick nicht gewünscht, auch diese zeile entfernen.
- list.Add(c) ' und fügen sie der liste der clients hinzu.
- Label1.Text += vbNewLine & (c.nick & " has joined.")
- ' falls alle anderen das auch lesen sollen können, an alle clients weiterleiten. siehe SendToAllClients
- Dim t As New Threading.Thread(AddressOf ListenToConnection)
- t.Start(c)
- End While
- End Sub
- Private Sub ListenToConnection(ByVal con As Connection)
- Do
- Try
- Dim tmp As String = con.streamr.ReadLine ' warten, bis etwas empfangen wird...
- Label1.Text += vbNewLine & con.nick & ": " & tmp
- SendToAllClients(con.nick & ": " & tmp) ' an alle clients weitersenden.
- Catch ' die aktuelle überwachte verbindung hat sich wohl verabschiedet.
- list.Remove(con)
- Label1.Text += vbNewLine & con.nick & " has exit."
- Exit Do
- End Try
- Loop
- End Sub
- End Class
Würde mich sehr Freuen könntet ihr mir helfen
Mfg
confix