Table of Contents
Updated
You may encounter an error that points to the source code of winsock. There are several ways to solve this problem, and we will deal with it shortly. g.Socket Users with Winsock The Windows API for socket programming is called winsock. Sockets are the basic “things” behind any type of network communication your computer does.
g.
- 2 minutes to read.
Is Winsock an API?
Windows Socket API, also known as Winsock, is a new type of application programming interface (API) used for communication between Windows networking software regarding network services. It is primarily based on the Transmission Control Protocol / Internet Protocol (TCP / IP) and originates from the Berkeley Unix socket program.
The following is the complete initial value for a basic Winsock TCP / IP Server application.
Winsock Server Source
#undef UNICODE#define WIN32_LEAN_AND_MEAN#include #include #include #include #include // Must be linked to Ws2_32.lib# pragma comment (lib, "Ws2_32.lib")// #pragma little (lib, "Mswsock.lib")#define DEFAULT_BUFLEN 512#define DEFAULT_PORT "27015"base interval __cdecl (invalid) WSADATA wsaData; int iResult; SOCKET ListenSocket = INVALID_SOCKET; SOCKET ClientSocket = INVALID_SOCKET; struct addrinfo * result = NULL; struct addrinfo advice; int iSendResult; char recvbuf [DEFAULT_BUFLEN]; int recvbuflen = DEFAULT_BUFLEN; // initialize winsock iResult implies WSAStartup (MAKEWORD (2,2), & wsaData); if if (iResult! = 0) printf ("Error starting WSAS due to error:% d n", iResult); Return 1; ZeroMemory (& review, sizeof (review)); hints.ai_family = AF_INET; hints.ai_socktype = SOCK_STREAM; hints.ai_protocol = IPPROTO_TCP; hints.ai_flags = AI_PASSIV; // Resolution of server address and port iResult = getaddrinfo (NULL, DEFAULT_PORT, & hints, & result); if (iResult! = 0) printf ("getaddrinfo failed to execute error:% d n", iResult); wsacleanup ();Return 1; // Create a SOCKET to connect to the server ListenSocket = socket (result-> ai_family, result-> ai_socktype, result-> ai_protocol); if (ListenSocket == INVALID_SOCKET) printf ("Socket failed with error:% ld n", WSAGetLastError ()); freeaddrinfo (result); wsacleanup (); Return 1; // Configure TCP listening socket iResult = bind (ListenSocket, result-> ai_addr, (int) result-> ai_addrlen); if (iResult == SOCKET_ERROR) printf ("Communication error:% d n", WSAGetLastError ()); freeaddrinfo (result); closesocket (ListenSocket); wsacleanup (); Return 1; freeaddrinfo (result); iResult = listen (ListenSocket, SOMAXCONN); if (iResult == SOCKET_ERROR) printf ("List of thrown with errors:% d n", WSAGetLastError ()); closesocket (ListenSocket); wsacleanup (); return 1; // Accept the point of sale ClientSocket = accept (ListenSocket, NULL, NULL); if (ClientSocket == INVALID_SOCKET) printf ("Acceptance failed with error:% d n", WSAGetLastError ()); closesocket (ListenSocket); wsacleanup (); Return 1; // Server socket is no longer required closesocket (ListenSocket); // Receive until the peer completes the connection make iResult is equivalent to recv (ClientSocket, recvbuf, recvbuflen, 0); if (result> 0) printf ("Bytes received:% d n", iResult); // Returneating a buffer to the sender iSendResult = send (ClientSocket, recvbuf, iResult, null); anytime (iSendResult == SOCKET_ERROR) printf ("Download failed with error:% d n", WSAGetLastError ()); closesocket (ClientSocket); wsacleanup (); Return 1; printf ("Bytes sent:% d n", iSendResult); otherwise, if (iResult == 0) printf ("Close connection ... n"); Next to you printf ("recv failed with error:% d n", WSAGetLastError ()); closesocket (ClientSocket); WSACleanup (); repeat 1; however (iResult> 0); // End the connection when we're done iResult = shutdown (ClientSocket, SD_SEND); if (iResult == SOCKET_ERROR) printf ("Stopping failed with error:% d n", WSAGetLastError ()); closesocket (ClientSocket); WSACleanup (); Return 1; // Clean closesocket (ClientSocket); WSACleanup (); Returns 0;
How do I access Winsock?
Open this command prompt as administrator.Type the following command and press Enter: netsh winsock reset. The command should return destinations such as the following:Restart your Windows computer. You can restart Windows using the shutdown / r command on the command line.
Kod źródłowy Winsock
Code Source Winsock
Código Fuente De Winsock
Winsock-broncode
Código Fonte Winsock
Winsock-Quellcode
Codice Sorgente Winsock
Исходный код Винсока
Winsock 소스 코드
Winsock Källkod