Windows sockets v prostředí MFC
Poznámka
MFC podporuje rozhraní Windows Sockets 1, ale nepodporuje rozhraní Windows Sockets 2. Windows Sockets 2 byl poprvé dodáván s Windows 98 a je součástí systému Windows 2000.
MFC poskytuje dva modely pro psaní síťových komunikačních programů pomocí rozhraní Windows Sockets vtělené do dvou tříd MFC. Tento článek popisuje tyto modely a další podrobnosti o podpoře soketů MFC. "Soket" je koncový bod komunikace: objekt, přes který vaše aplikace komunikuje s jinými aplikacemi Windows Sockets v síti.
Informace o rozhraní Windows Sockets, včetně vysvětlení konceptu soketu, naleznete v tématu Windows Sockets: Background.
Programovací modely soketů
Následující třídy podporují dva programovací modely rozhraní WINDOWS Sockets MFC:
CAsyncSocket
Tato třída zapouzdřuje rozhraní API rozhraní Windows Sockets. CAsyncSocket je pro programátory, kteří znají síťové programování a chtějí flexibilitu programování přímo do rozhraní API soketů, ale také chtějí pohodlí funkcí zpětného volání pro oznámení síťových událostí. Kromě balení soketů v objektově orientované podobě pro použití v jazyce C++, jedinou další abstrakcí, která tato třída dodává, převádí určité zprávy systému Windows související se soketem na zpětná volání. Další informace naleznete v tématu Windows Sockets: Oznámení soketů.
CSocket
Tato třída odvozená z
CAsyncSocket
, poskytuje vyšší úroveň abstrakce pro práci s sokety prostřednictvím MFC CArchive objektu. Použití soketu s archivem se výrazně podobá použití protokolu serializace souborů MFC. To usnadňuje použití nežCAsyncSocket
model. CSocket dědí mnoho členských funkcí zCAsyncSocket
těchto zapouzdřených rozhraní API rozhraní Windows Sockets. Některé z těchto funkcí budete muset používat a obecně porozumět programování soketů. Spravuje aleCSocket
mnoho aspektů komunikace, které byste museli udělat sami pomocí nezpracovaného rozhraní API nebo třídyCAsyncSocket
. Nejdůležitější je,CSocket
že poskytuje blokování (se zpracováním zpráv systému Windows na pozadí), což je nezbytné pro synchronní provozCArchive
.
Vytváření a používání CSocket
objektů CAsyncSocket
je popsáno v rozhraní Windows Sockets: Použití soketů s archivy a rozhraní Windows Sockets: Použití třídy CAsyncSocket.
Knihovny DLL rozhraní Windows Sockets
Operační systémy Microsoft Windows poskytují dynamické knihovny (DLL) rozhraní Windows Sockets. Visual C++ poskytuje příslušné soubory hlaviček a knihovny a specifikaci rozhraní Windows Sockets.
Další informace o rozhraní Windows Sockets najdete tady: