Partilhar via


Escrevendo um aplicativo cliente da Internet usando classes WinInet MFC

A base de cada aplicativo cliente da Internet é a sessão da Internet. O MFC implementa sessões da Internet como objetos da classe CInternetSession. Usando essa classe, você pode criar uma sessão da Internet ou várias sessões simultâneas.

Para se comunicar com um servidor, você precisa de um objeto CInternetConnection, bem como de um CInternetSession. Você pode criar uma CInternetConnection usando CInternetSession::GetFtpConnection, CInternetSession::GetHttpConnection ou CInternetSession::GetGopherConnection. Cada uma dessas chamadas é específica para o tipo de protocolo. Essas chamadas não abrem um arquivo no servidor para leitura ou gravação. Se você pretende ler ou gravar dados, deve abrir o arquivo como uma etapa separada.

Para a maioria das sessões da Internet, o objeto CInternetSession funciona de mãos dadas com um objeto CInternetFile:

  • Para uma sessão na Internet, você deve criar uma instância do CInternetSession.

  • Se a sua sessão da Internet ler ou gravar dados, você deverá criar uma instância de CInternetFile (ou suas subclasses, CHttpFile ou CGopherFile). A maneira mais fácil de ler dados é chamar CInternetSession::OpenURL. Essa função analisa uma URL (Universal Resource Locator) fornecida por você, abre uma conexão com o servidor especificado pela URL e retorna um objeto somente leitura CInternetFile. CInternetSession::OpenURL não é específico de um tipo de protocolo – a mesma chamada funciona para qualquer URL FTP, HTTP ou Gopher. CInternetSession::OpenURL funciona até com arquivos locais (retornando um CStdioFile em vez de um CInternetFile).

  • Se a sessão da Internet não ler ou gravar dados, mas executar outras tarefas, como excluir um arquivo em um diretório FTP, talvez você não precise criar uma instância de CInternetFile.

Há duas maneiras de criar um objeto CInternetFile:

  • Se você usar CInternetSession::OpenURL para estabelecer sua conexão de servidor, a chamada a OpenURL retornará um CStdioFile.

  • Se usar CInternetSession::GetFtpConnection, GetGopherConnection ou GetHttpConnection para estabelecer sua conexão de servidor, você deverá chamar CFtpConnection::OpenFile, CGopherConnection::OpenFileou CHttpConnection::OpenRequest, respectivamente, para retornar um CInternetFile, CGopherFile ou CHttpFile, respectivamente.

As etapas na implementação de um aplicativo cliente da Internet variam a depender se você cria um cliente genérico da Internet com base em OpenURL ou um cliente específico do protocolo usando uma das funções GetConnection.

O que mais você deseja saber?

Confira também

Extensões da Internet Win32 (WinInet)
Classes MFC para criar aplicativos clientes de Internet
Pré-requisitos para classes cliente da Internet