Untitled
unknown
plain_text
2 years ago
2.0 kB
10
Indexable
#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;
}Editor is loading...
Leave a Comment