Initiera Winsock

Alla processer (program eller DLL:er) som anropar Winsock-funktioner måste initiera användningen av Windows Sockets DLL innan andra Winsock-funktionsanrop utförs. Detta säkerställer också att Winsock stöds i systemet.

Initiera Winsock

  1. Skapa ett WSADATA- objekt med namnet wsaData.

    WSADATA wsaData;
    
  2. Anropa WSAStartup och returnera dess värde som ett heltal och sök efter fel.

    int iResult;
    
    // Initialize Winsock
    iResult = WSAStartup(MAKEWORD(2,2), &wsaData);
    if (iResult != 0) {
        printf("WSAStartup failed: %d\n", iResult);
        return 1;
    }
    

Funktionen WSAStartup anropas för att initiera användningen av WS2_32.dll.

Strukturen WSADATA innehåller information om Windows Sockets-implementeringen. Parametern MAKEWORD(2,2) för WSAStartup gör en begäran om version 2.2 av Winsock i systemet och anger den version som har godkänts som den högsta versionen av Windows Sockets-stöd som anroparen kan använda.

Nästa steg för en klient: Skapa en socket för klienten

Nästa steg för en server: Skapa en socket för server

komma igång med Winsock

Skapa ett grundläggande Winsock-program