Initialisieren von Winsock
Alle Prozesse (Anwendungen oder DLLs), die Winsock-Funktionen aufrufen, müssen die Verwendung der Windows Sockets-DLL initialisieren, bevor andere Winsock-Funktionsaufrufe ausgeführt werden. Dadurch wird auch sichergestellt, dass Winsock auf dem System unterstützt wird.
So initialisieren Sie Winsock
Erstellen Sie ein WSADATA-Objekt namens wsaData.
WSADATA wsaData;
Rufen Sie WSAStartup auf , und geben Sie dessen Wert als ganze Zahl zurück, und überprüfen Sie auf Fehler.
int iResult; // Initialize Winsock iResult = WSAStartup(MAKEWORD(2,2), &wsaData); if (iResult != 0) { printf("WSAStartup failed: %d\n", iResult); return 1; }
Die WSAStartup-Funktion wird aufgerufen, um die Verwendung von WS2_32.dll zu initiieren.
Die WSADATA-Struktur enthält Informationen zur Windows Sockets-Implementierung. Der MAKEWORD(2,2)-Parameter von WSAStartup stellt eine Anforderung für Version 2.2 von Winsock auf dem System und legt die übergebene Version als höchste Version der Windows Sockets-Unterstützung fest, die der Aufrufer verwenden kann.
Nächster Schritt für einen Client: Erstellen eines Sockets für den Client
Nächster Schritt für einen Server: Erstellen eines Sockets für den Server
Zugehörige Themen