Wenn Sie bei Verwendung des TCP-Protokolls eine Clientanwendung erstellen müssen, müssen Sie den Namen oder die IP-Adresse des Servers angeben. Der Kommunikationsport der Anwendung überwacht jederzeit sorgfältig die von der anderen Partei gesendeten Nachrichten, was eine Garantie für eine zuverlässige Verbindung des Systems darstellt. Sobald die Verbindung hergestellt ist, kann jede Partei Daten über SendData senden und empfangen und ihre eigenen Daten über GetData trennen. Beim Übertragen von Daten müssen Sie zuerst das LocalPort-Attribut des Clients festlegen, der Server muss lediglich das RemoteHost-Attribut auf die Ethernet-Adresse des Clients festlegen, dieselbe Portadresse wie das LocalPort-Attribut des Clients festlegen und mit dem Senden von Nachrichten beginnen. Der Client trennt die gesendeten Informationen über das DataArrival-Ereignis im GetData-Ereignis. Ein Winsock-Steuerelement ermöglicht es einem lokalen Computer, über UDP- oder TCP-Protokolle eine Verbindung zu einem Remotecomputer herzustellen. Beide Protokolle können Client- und Serveranwendungen erstellen.
Bei Verwendung der Winsock-Steuerung müssen beide Kommunikationsparteien dasselbe Protokoll auswählen. Das TCP-Protokoll eignet sich für die Übertragung großer Datendateien, die Sicherheitsgarantien erfordern, während das UDP-Protokoll für Situationen geeignet ist, in denen Sie mit vielen Untergebenen separat kommunizieren müssen oder in denen viele und zeitlich schwankende Verbindungen hergestellt werden, insbesondere wenn die Die Datenmenge ist gering. Sie können beim Festlegen die Methode Winsock1.PRotocol=sckTCPProtocol verwenden. Suchen Sie zunächst den Namen Ihres Computers und fügen Sie ihn der LocalHost-Eigenschaft von Winsock hinzu.
Beim Erstellen einer Anwendung müssen Sie zunächst feststellen, ob Sie eine Clientanwendung oder einen Serverdienst erstellen. Erst wenn die eingerichtete Serveranwendung zu arbeiten beginnt und in den Überwachungsstatus wechselt, beginnt die Clientanwendung, eine Verbindung herzustellen und in den normalen Kommunikationsstatus zu wechseln . Der Autor hat eine Anwendung erstellt, deren Funktion darin besteht, dass die Serveranwendung die Position der Maus in Echtzeit anzeigen kann, wenn sich die Maus des Clients bewegt.
So erstellen Sie eine Serveranwendung:
1. Erstellen Sie eine neue Standard-EXE-Datei.
2. Fügen Sie ein Winsock-Steuerelement hinzu.
3. Fügen Sie den folgenden Code hinzu:
PrivateSubFormLoad()
tcpServer.LocalPort=1001
tcpServer.Localhost=server
tcpServer.remotePort=1002
tcpServer.Localhost=klint
tcpServer.Listen
EndSub
'Verbindungsprüfung
PrivateSubtcpServerConnectionRequest(ByValrequestIDAsLong)
IftcpServer.State<>sckClosedThen
tcpServer.Close
tcpServer.AcceptrequestID
EndSub
'Daten senden
PrivateSubfrmservermonsemove(x,y)
tcpServer.SendDatax&str(x)
tcpServer.SendDatay&str(y)
EndSub
So erstellen Sie eine Kundenanwendung:
1. Erstellen Sie eine neue Standard-EXE-Datei.
2. Fügen Sie ein Winsock-Steuerelement hinzu.
3. Fügen Sie zwei Textfelder hinzu – txtx und txty;
4. Fügen Sie den folgenden Code hinzu:
PrivateSubFormLoad()
tcpServer.LocalPort=1002
tcpServer.Localhost=klint
tcpServer.remotePort=1001
tcpServer.Localhost=server
tcpServer.Listen
EndSub
'Verbindungsprüfung
PrivateSubtcpklintConnectionRequest
(ByValrequestIDAsLong)
Iftcpklint.State<>sckClosedThen
tcpklint.Schließen
tcpklint.AcceptrequestID
EndSub
Daten empfangen
PrivateSubtcpClientDataArrival
(ByValbytesTotalAsLong)
DimstrDataAsString
tcpklint.GetDatastrData
ifleft(strData,1)=Xthen
txtx.Text=strData
anders
txty.Text=strData
endif
EndSub
Die obige Routine implementiert eine sehr einfache Punkt-zu-Punkt-Kommunikation. Mit geringfügigen Modifikationen auf dieser Basis kann ein funktional komplexes interaktives Echtzeit-Computernetzwerk-AA-Kommunikationssystem für Steuerung, Grafiksimulation usw. gebildet werden. Winsock in VB bietet uns eine einfache Datenübertragungsmethode, mit der wir problemlos eine Punkt-zu-Punkt-Netzwerkkommunikation erreichen können.
->