WinSock initialisieren


Die erste Funktion, die wir aufrufen müssen, heißt "WSAStartup". Ohne diese Initialisierung können wir keine Netzwerkfunktionen verwenden. Bitte verwechseln Sie das nicht mit Internet-Funktionen! Netzwerkfunktionen, die uns im Rahmen dieses Kapitels interessieren werden, sind etwa

socket
connect
recv
gethostbyname


Doch zurück zu "WSAStartup" -
In unserem Fall genügt es, die Funktion einmal beim Start aufzurufen. Sie erwartet als ersten Parameter die gewünschte WinSock-Version. Ich habe mich für v1.1 entschieden, was bei den bisher bekannten Windows-Versionen eigentlich keine Probleme verursachen sollte. Im Zweifelsfall (Win95?) können Sie aber auch die Version 1.0 benutzen. Der zweite Parameter der Funktion ist eine TWsaData-Variable:

if(WsaStartup(MAKEWORD(1,1),wsadata) <> 0) then
begin
  MessageBox(0,'WinSock-Fehler',nil,0);
  Halt;
end;

Die Funktion liefert im Erfolgsfall Null zurück. Tritt ein Fehler auf, ist das Rückgabeergebnis der entsprechende Fehlercode. In dem Fall sollten Sie das Programm besser beenden oder wenigstens die Netzwerkfunktionen deaktivieren.

Wenn Sie keine Netzwerkfunktionen mehr benötigen (in unserem Fall beim Beenden des Programms), rufen Sie bitte "WSACleanup" auf.

WsaCleanup;