Windows server socket in C++
Chiariamo subito che parliamo di Visual C++, quindi il programma userà le librerie di Windows e non sarà usabile su altri sistemi (ho in programma di creare una versione per Linux).
Nello specifico useremo le librerie Winsock.
Iniziamo a creare un progetto in Visual Studio di tipo VC++ console; aggiungete anche le librerie MFC in fase di creazione.
MFC ci servirà per implementare il multi-thread!
Una volta creato il progetto aprite il file stdafx.h e aggiungete queste righe:
#include <WinSock2.h>
#include <conio.h>
using namespace std;
Così facendo avremo disponibile il tutto per tutto il progetto.
Dopo di che creiamo una nuova classe che chiameremo Server.
Nel file di intestazione ci sarà questo:
#pragma once
using namespace std;
class Server {
public:
Server();
virtual ~Server();
UINT initConnection();
void stopConnection();
private:
SOCKET server;
SOCKET inAscolto;
};
In pratica abbiamo aggiunto due funzioni (una per la connessione e una per la disconnessione) e due variabili private.
Fin qui direi nulla di difficile.