Condividi tramite


Windows Sockets in MFC

Nota

MFC supporta Windows Sockets 1, ma non supporta Windows Sockets 2. Windows Sockets 2 fornito per la prima volta con Windows 98 ed è la versione inclusa in Windows 2000.

MFC fornisce due modelli per la scrittura di programmi di comunicazione di rete con Windows Sockets, incorporati in due classi MFC. Questo articolo descrive questi modelli e altri dettagli sul supporto dei socket MFC. Un "socket" è un endpoint di comunicazione: un oggetto attraverso il quale l'applicazione comunica con altre applicazioni Windows Sockets in una rete.

Per informazioni su Windows Sockets, inclusa una spiegazione del concetto di socket, vedere Windows Sockets: Background.

Modelli di programmazione socket

I due modelli di programmazione Windows Sockets MFC sono supportati dalle classi seguenti:

  • CAsyncSocket

    Questa classe incapsula l'API Windows Sockets. CAsyncSocket è destinato ai programmatori che conoscono la programmazione di rete e vogliono la flessibilità di programmazione direttamente nell'API dei socket, ma vogliono anche la praticità delle funzioni di callback per la notifica degli eventi di rete. Oltre a creare pacchetti di socket in formato orientato agli oggetti per l'uso in C++, l'unica astrazione aggiuntiva fornita da questa classe consiste nel convertire determinati messaggi windows correlati al socket in callback. Per altre informazioni, vedere Windows Sockets: Socket Notifications.For more information, see Windows Sockets: Socket Notifications.

  • CSocket

    Questa classe, derivata da CAsyncSocket, fornisce un'astrazione di livello superiore per l'uso dei socket tramite un oggetto CArchive MFC. L'uso di un socket con un archivio è molto simile all'uso del protocollo di serializzazione dei file MFC. In questo modo è più semplice usare il CAsyncSocket modello. CSocket eredita molte funzioni membro da CAsyncSocket tale API Windows Sockets incapsulate. Sarà necessario usare alcune di queste funzioni e comprendere in genere la programmazione dei socket. Ma CSocket gestisce molti aspetti della comunicazione che è necessario eseguire manualmente usando l'API non elaborata o la classe CAsyncSocket. Soprattutto, CSocket fornisce il blocco (con l'elaborazione in background dei messaggi di Windows), essenziale per l'operazione sincrona di CArchive.

La creazione e l'uso CSocket di oggetti e CAsyncSocket sono descritti in Windows Sockets: Using Sockets with Archives and Windows Sockets: Using Class CAsyncSocket (Uso di socket con archivi e Windows Sockets: uso di CAsyncSocket classe).

DLL di Windows Sockets

I sistemi operativi Microsoft Windows forniscono le librerie a collegamento dinamico (DLL) di Windows Sockets. Visual C++ fornisce i file di intestazione e le librerie appropriati e la specifica di Windows Sockets.

Per altre informazioni su Windows Sockets, vedere:

Vedi anche

Windows Sockets