Pisanie aplikacji klienckiej internetowej przy użyciu klas MFC WinInet

Uwaga / Notatka

Biblioteka Klas programu Microsoft Foundation (MFC) nadal jest obsługiwana. Nie dodajemy już funkcji ani nie aktualizujemy dokumentacji.

Podstawą każdej aplikacji klienckiej internetu jest sesja internetowa. MFC implementuje sesje internetowe jako obiekty klasy CInternetSession. Korzystając z tej klasy, można utworzyć jedną sesję internetową lub kilka równoczesnych sesji.

Aby komunikować się z serwerem, potrzebny jest obiekt CInternetConnection , a także CInternetSession. Można utworzyć element CInternetConnection przy użyciu CInternetSession::GetFtpConnection, CInternetSession::GetHttpConnection lub CInternetSession::GetGopherConnection. Każde z tych wywołań jest specyficzne dla typu protokołu. Te wywołania nie otwierają pliku na serwerze do odczytu lub zapisu. Jeśli zamierzasz odczytywać lub zapisywać dane, musisz otworzyć plik w osobnym kroku.

W przypadku większości sesji CInternetSession Internetowych obiekt działa w tandemie z obiektem CInternetFile :

  • W przypadku sesji internetowej należy utworzyć instancję CInternetSession.

  • Jeśli sesja internetowa odczytuje lub zapisuje dane, musisz utworzyć wystąpienie CInternetFile (lub jego podklasy, CHttpFile lub CGopherFile). Najprostszym sposobem odczytu danych jest wywołanie CInternetSession::OpenURL. Ta funkcja analizuje uniwersalny lokalizator zasobów (url) dostarczony przez Ciebie, otwiera połączenie z serwerem określonym przez adres URL i zwraca obiekt tylko CInternetFile do odczytu. CInternetSession::OpenURL nie jest specyficzny dla jednego typu protokołu — to samo wywołanie działa dla dowolnego adresu URL PROTOKOŁU FTP, HTTP lub gopher. CInternetSession::OpenURL Nawet działa z plikami lokalnymi (zwraca wartość CStdioFile zamiast CInternetFile).

  • Jeśli sesja internetowa nie odczytuje ani nie zapisuje danych, ale wykonuje inne zadania, takie jak usuwanie pliku w katalogu FTP, może nie być konieczne utworzenie wystąpienia CInternetFile.

Istnieją dwa sposoby tworzenia CInternetFile obiektu:

  • Jeśli używasz CInternetSession::OpenURL metody do nawiązania połączenia z serwerem, wywołanie OpenURL metody zwraca wartość CStdioFile.

  • Jeśli używasz CInternetSession::GetFtpConnection, GetGopherConnection lub GetHttpConnection do nawiązania połączenia z serwerem, musisz odpowiednio wywołać CFtpConnection::OpenFile, CGopherConnection::OpenFile lub CHttpConnection::OpenRequest, aby zwrócić odpowiednio CInternetFile, CGopherFile lub CHttpFile.

Kroki implementowania aplikacji klienckiej internetowej różnią się w zależności od tego, czy tworzysz ogólnego klienta internetowego na OpenURL podstawie lub klienta specyficznego GetConnection dla protokołu przy użyciu jednej z funkcji.

Co chcesz dowiedzieć się więcej o

Zobacz także

Rozszerzenia internetowe Win32 (WinInet)
Klasy MFC do tworzenia internetowych aplikacji klienckich
Wymagania wstępne dotyczące klas klientów internetowych