vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Chat 
Autor: dj.tommy
Datum: 04.08.05 10:56

Hallo Leute!
Wer kann mir bei diesem problem helfen.
Und zwar ich habe mir ein chat mittels winsock gebastelt, nun will ich eine bestädigung einbauen.
Das heiß wenn der client mit ins chat will, bekomm ich als server eine meldung das der client das chat betretten will.
Wenn ich auf ja klicke soll der client eine antwort bekommen "sie wurden angenommen".
Aber wenn ich nein klicke soll der client eine antwort bekommen "sie sind nicht angenommen".
Ich habe das versucht aber ich bekommt das nicht in ,ob der server den client verweigert oder wenn der server offline geht.
Es kommt immer die selbe meldung
danke für eure hilfe!!
so schaut der momentan der code von Server aus .
Private IsServer As Boolean
Private Verbunden As Boolean
 Dim strMessage As String
Dim one 'variable für die meldung
Dim Pf 'variable für die prüfung
Private Sub Form_Load()
 
If IsServer = IsServer Then
      Winsock1.LocalPort = 50
       Text1.Text = "Sie sind jetzt im Server Modus" & vbNewLine
        DoEvents
       Winsock1.Listen
       End If
Form1.Show
End Sub
 
Private Sub Text2_KeyPress(KeyAscii As Integer)
 
If KeyAscii = vbKeyReturn Then ' prüfung
KeyAscii = 1 'Tastertur
 
 Text1.Text = Text1.Text & Form2.Text1.Text & "> " & Text2.Text & vbCrLf
 
Winsock1.SendData Form2.Text1.Text & "> " & Text2.Text
Text2 = ""
End If
End Sub
 
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
 
one = MsgBox("Wollen Sie den Client annehmen?", 68, "frage")
If one = 6 Then
If Winsock1.State <> sckClosed Then Winsock1.Close
Winsock1.Accept requestID
Text1.Text = "Der Client hat den Chat betretten" & vbCrLf
End If
If one = 7 Then
requestID = 0
Text1.Text = "Der Client hat den Chat nicht betretten" & vbCrLf
End If
End Sub
 
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim daten As String
Winsock1.GetData daten
  Text1.Text = Text1.Text & daten & vbCrLf
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
 
one = MsgBox("Möchten Sie das Programm beenden ?", 36, "Beenden")
If one = 6 Then
End
End If
If one = 7 Then Cancel = True
End Sub
Private Sub Winsock1_Close()
If Pf = Pf Then
Text1.Text = " Der Client hat den Chat verlassen"
' Verbindung schliessen
Winsock1.Close
If IsServer = IsServer Then
      Winsock1.LocalPort = 50
       Text1.Text = "Sie sind jetzt im Server Modus" & vbNewLine
        DoEvents
       Winsock1.Listen
       End If
End If
End Sub
Und das ist der code von client
Private IsServer As Boolean
Private Verbunden As Boolean
Dim one ' variable für die meldung
 
Private Sub Command1_Click()
 
Text1.Text = Text1.Text & Text2.Text & vbCrLf
Text2 = ""
Winsock1.SendData Text1.Text
 
End Sub
 
Private Sub Form_Load()
Winsock1.RemotePort = 50
Winsock1.RemoteHost = "127.0.0.1"
'und ab gehts VERBINDEN!!
Winsock1.Connect
End Sub
 
Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then ' prüfung
Text1.Text = Text1.Text & Anmeldung.ip.Text & "> " & Text2.Text & vbCrLf
 
Winsock1.SendData Anmeldung.ip.Text & "> " & Text2.Text
Text2 = ""
End If
End Sub
 
Private Sub Winsock1_Connect()
'da wir ja wissen wollen ob wir verbunden sind meldung ausgeben
Text1.Text = "Die verbindung ist aufgebaut"
End Sub
 
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim daten As String
'wenn was zu holen ist
Winsock1.GetData daten
    Text1.Text = Text1.Text & daten & vbCrLf
End Sub
 
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
 
one = MsgBox("Möchten Sie das Programm beenden ?", 36, "Beenden")
If one = 6 Then
End
End If
If one = 7 Then Cancel = True
End Sub
Private Sub Winsock1_Close()
' Wenn der andere PC die Verbindung beendet hat
    On Error GoTo ErrorHandler
 
 
    one = MsgBox("Der Server ist Offline oder hat Sie verweigert ! " & _
      vbNewLine & "Das Programm wird Geschlossen.", 64, "Offline")
If one = 1 Then
End
End If
 
 
    Exit Sub
ErrorHandler:
    MsgBox Err.Description, vbApplicationModal + vbCritical + vbDefaultButton1 _
      + vbMsgBoxSetForeground + vbOKOnly, "Fehler"
    Err.Clear
    Exit Sub
End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Chat518dj.tommy04.08.05 10:56

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel