WORD sCreate ( WSOCK * sock ) { char cErrorMessage [ 1024 ] ; WORD ret = 0 ; WORD wVersionRequested ; WSADATA wsaData ; wVersionRequested = MAKEWORD ( 1, 1 ) ; ret = WSAStartup ( wVersionRequested, &wsaData ) ; if ( ret != 0 ) { snprintf ( cErrorMessage, sizeof( cErrorMessage ) - 1, "Failed to initialize Winsock\nErrorcode: %ld", WSAGetLastError() ) ; MessageBox ( NULL, cErrorMessage, "Could't initialize Winsock", MB_ICONERROR ) ; return ret ; } ret = 0 ; sock = create ( AF_INET, SOCK_STREAM, 0 ) ; if ( sock < 0 ) { snprintf ( cErrorMessage, sizeof( c ErrorMessage ) - 1, "Failed to create a Socket" ) ; MessageBox ( NULL, cErrorMessage, "Could't create a Socket", MB_ICONERROR ) ; return sock ; } // todo ... }