Untitled
unknown
plain_text
24 days ago
2.0 kB
5
Indexable
Never
#include <iostream> #include <winsock2.h> #pragma comment(lib, "ws2_32.lib") int main() { // Initialize Winsock WSADATA wsaData; if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) { std::cerr << "WSAStartup failed." << std::endl; return 1; } // Create a socket SOCKET serverSocket = socket(AF_INET, SOCK_STREAM, 0); if (serverSocket == INVALID_SOCKET) { std::cerr << "Error creating socket: " << WSAGetLastError() << std::endl; WSACleanup(); return 1; } // Specify the server address sockaddr_in serverAddress; serverAddress.sin_family = AF_INET; serverAddress.sin_port = htons(12345); // Choose any available port serverAddress.sin_addr.s_addr = inet_addr("192.168.1.100"); // Replace with your server's static IP // Bind the socket if (bind(serverSocket, (struct sockaddr*)&serverAddress, sizeof(serverAddress)) == SOCKET_ERROR) { std::cerr << "Bind failed with error: " << WSAGetLastError() << std::endl; closesocket(serverSocket); WSACleanup(); return 1; } // Listen for incoming connections if (listen(serverSocket, 5) == SOCKET_ERROR) { std::cerr << "Listen failed with error: " << WSAGetLastError() << std::endl; closesocket(serverSocket); WSACleanup(); return 1; } std::cout << "Server is waiting for connections..." << std::endl; // Accept a connection SOCKET clientSocket = accept(serverSocket, nullptr, nullptr); if (clientSocket == INVALID_SOCKET) { std::cerr << "Accept failed with error: " << WSAGetLastError() << std::endl; closesocket(serverSocket); WSACleanup(); return 1; } // Send data to the client const char* message = "Hello from the server!"; send(clientSocket, message, strlen(message), 0); // Close the sockets closesocket(clientSocket); closesocket(serverSocket); // Cleanup Winsock WSACleanup(); return 0; }
Leave a Comment