Sdílet prostřednictvím


Psaní internetových klientských aplikací pomocí tříd WinInet knihovny MFC

Základem každé internetové klientské aplikace je internetová relace. MFC implementuje internetové relace jako objekty třídy CInternetSession. Pomocí této třídy můžete vytvořit jednu internetovou relaci nebo několik souběžných relací.

Ke komunikaci se serverem potřebujete objekt CInternet Připojení ion a také CInternetSessionobjekt . Můžete vytvořit CInternetConnection pomocí CInternetSession::GetFtp Připojení ion, CInternetSession::GetHttp Připojení ion nebo CInternetSession::GetGopher Připojení ion. Každé z těchto volání je specifické pro typ protokolu. Tato volání neotevřou soubor na serveru pro čtení nebo zápis. Pokud máte v úmyslu číst nebo zapisovat data, musíte soubor otevřít jako samostatný krok.

U většiny internetových relací CInternetSession objekt funguje ručně s objektem CInternetFile :

  • Pro internetovou relaci musíte vytvořit instanci CInternetSession.

  • Pokud vaše internetová relace čte nebo zapisuje data, musíte vytvořit instanci CInternetFile (nebo její podtřídy, CHttpFile nebo CGopherFile). Nejjednodušší způsob, jak číst data, je volat CInternetSession::OpenURL. Tato funkce parsuje univerzální lokátor prostředků (URL) zadaný vámi, otevře připojení k serveru určenému adresou URL a vrátí objekt jen CInternetFile pro čtení. CInternetSession::OpenURL není specifický pro jeden typ protokolu – stejné volání funguje pro libovolnou adresu URL protokolu FTP, HTTP nebo gopher. CInternetSession::OpenURL dokonce funguje s místními soubory (vrací se místo CStdioFile CInternetFile).

  • Pokud vaše internetová relace nečte nebo zapisuje data, ale provádí jiné úlohy, například odstranění souboru v adresáři FTP, možná nebudete muset vytvořit instanci CInternetFile.

Objekt můžete vytvořit CInternetFile dvěma způsoby:

  • Pokud použijete CInternetSession::OpenURL k navázání připojení k serveru, volání vrátí OpenURL hodnotu CStdioFile.

  • Pokud používáte , nebo GetHttpConnection k navázání připojení k serveru, musíte volat CFtpConnection::OpenFileCGopherConnection::OpenFile, nebo CHttpConnection::OpenRequest, v uvedeném pořadí, vrátit CInternetFile, CGopherFilenebo CHttpFile, v uvedeném GetGopherConnectionpořadí.CInternetSession::GetFtpConnection

Postup implementace internetové klientské aplikace se liší v závislosti na tom, jestli vytvoříte obecného internetového klienta založeného na OpenURL klientovi nebo klienta specifického pro protokol pomocí některé z GetConnection těchto funkcí.

O čem chcete vědět víc

Viz také

Win32 – internetová rozšíření (WinInet)
MFC – třídy pro tvorbu internetových klientských aplikací
Požadavky na třídy internetových klientů