Classe CGopherConnection
Gerencia sua conexão com um servidor de Internet gopher.
Observação
As classes CGopherConnection
, CGopherFile
, CGopherFileFind
, CGopherLocator
e seus membros foram preteridos porque não funcionam na plataforma Windows XP, mas continuarão a funcionar em plataformas anteriores.
Sintaxe
class CGopherConnection : public CInternetConnection
Membros
Construtores públicos
Nome | Descrição |
---|---|
CGopherConnection::CGopherConnection | Constrói um objeto CGopherConnection . |
Métodos públicos
Nome | Descrição |
---|---|
CGopherConnection::CreateLocator | Cria um objeto CGopherLocator para localizar arquivos em um servidor gopher. |
CGopherConnection::GetAttribute | Recupera informações de atributo sobre o objeto gopher. |
CGopherConnection::OpenFile | Abre um arquivo gopher. |
Comentários
O serviço gopher é um dos três serviços de Internet reconhecidos pelas classes WinInet do MFC.
A classe CGopherConnection
contém um construtor e três funções membro adicionais que gerenciam o serviço gopher: OpenFile, CreateLocator e GetAttribute.
Para se comunicar com um servidor de Internet gopher, primeiro você deve criar uma instância de CInternetSession e, em seguida, chamar CInternetSession::GetGopherConnection, que cria o objeto CGopherConnection
e retorna um ponteiro para ele. Você nunca cria um objeto CGopherConnection
diretamente.
Para saber mais sobre como CGopherConnection
funciona com as outras classes de Internet do MFC, confira o artigo Programação na Internet com o WinInet. Para obter mais informações sobre como usar os outros dois serviços de Internet com suporte, FTP e HTTP, consulte as classes CHttpConnection e CFtpConnection.
Hierarquia de herança
CGopherConnection
Requisitos
Cabeçalho: afxinet.h
CGopherConnection::CGopherConnection
Essa função membro é chamada para construir um objeto CGopherConnection
.
CGopherConnection(
CInternetSession* pSession,
HINTERNET hConnected,
LPCTSTR pstrServer,
DWORD_PTR dwContext);
CGopherConnection(
CInternetSession* pSession,
LPCTSTR pstrServer,
LPCTSTR pstrUserName = NULL,
LPCTSTR pstrPassword = NULL,
DWORD_PTR dwContext = 0,
INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER);
Parâmetros
pSession
Descarte o objeto CInternetSession.
hConnected
O identificador do Windows da sessão de Internet atual.
pstrServer
Um ponteiro para uma cadeia de caracteres contendo o nome do servidor FTP.
dwContext
O identificador de contexto da operação. dwContext identifica as informações de status da operação retornadas por CInternetSession::OnStatusCallback. O padrão é definido como 1; no entanto, você pode atribuir explicitamente uma ID de contexto específica para a operação. O objeto e qualquer trabalho que ele fizer serão associados a essa ID de contexto.
pstrUserName
Ponteiro para uma cadeia de caracteres terminada em nulo que especifica o nome do usuário para fazer logon. Se NULL, o padrão será anônimo.
pstrPassword
Um ponteiro para uma cadeia de caracteres terminada em nulo que especifica a senha a ser usada para fazer logon. Se pstrPassword e pstrUserName forem NULL, a senha anônima padrão será o nome de email do usuário. Se pstrPassword for NULL (ou uma cadeia de caracteres vazia), mas pstrUserName não for NULL, uma senha em branco será usada. A seguinte tabela descreve o comportamento para as quatro configurações possíveis de pstrUserName e pstrPassword:
pstrUserName | pstrPassword | Nome de usuário enviado ao servidor FTP | Senha enviada ao servidor FTP |
---|---|---|---|
NULL ou " " | NULL ou " " | "anonymous" | Nome de email do usuário |
Cadeia de caracteres não NULL | NULL ou " " | pstrUserName | " " |
Cadeia de caracteres NULL não NULL | ERROR | ERROR | |
Cadeia de caracteres não NULL | Cadeia de caracteres não NULL | pstrUserName | pstrPassword |
nPort
Um número que identifica a porta TCP/IP a ser usada no servidor.
Comentários
Nunca crie um CGopherConnection
diretamente. Em vez disso, chame CInternetSession::GetGopherConnection, que cria um objeto CGopherConnection
e retorna um ponteiro para ele.
CGopherConnection::CreateLocator
Chame essa função membro para criar um localizador gopher para localizar ou identificar um arquivo em um servidor gopher.
CGopherLocator CreateLocator(
LPCTSTR pstrDisplayString,
LPCTSTR pstrSelectorString,
DWORD dwGopherType);
static CGopherLocator CreateLocator(LPCTSTR pstrLocator);
static CGopherLocator CreateLocator(
LPCTSTR pstrServerName,
LPCTSTR pstrDisplayString,
LPCTSTR pstrSelectorString,
DWORD dwGopherType,
INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER);
Parâmetros
pstrDisplayString
Um ponteiro para uma cadeia de caracteres que contém o nome do documento ou diretório gopher a ser recuperado. Se o parâmetro pstrDisplayString for NULL, o diretório padrão do servidor gopher será retornado.
pstrSelectorString
Um ponteiro para a cadeia de caracteres do seletor a ser enviada ao servidor gopher para recuperar um item. pstrSelectorString pode ser NULL.
dwGopherType
Isso especifica se pstrSelectorString se refere a um diretório ou documento e se a solicitação é gopher ou gopher+. Consulte os atributos para a estrutura GOPHER_FIND_DATA no SDK do Windows.
pstrLocator
Um ponteiro para uma cadeia de caracteres que identifica o arquivo a ser aberto. Geralmente, essa cadeia de caracteres é retornada de uma chamada a CGopherFileFind::GetLocator.
pstrServerName
Um ponteiro para uma cadeia de caracteres contendo o nome do servidor gopher.
nPort
O número que identifica a porta da Internet para essa conexão.
Valor de retorno
Um objeto CGopherLocator.
Comentários
A versão estática da função membro exige que você especifique um servidor, enquanto a versão não estática usa o nome do servidor do objeto de conexão.
Para recuperar informações de um servidor gopher, um aplicativo deve primeiro obter um localizador de gopher. Em seguida, o aplicativo deve tratar o localizador como um token opaco (ou seja, o aplicativo pode usar o localizador, mas não manipulá-lo ou compará-lo diretamente). Normalmente, o aplicativo usa o localizador para chamadas à função membro CGopherFileFind::FindFile a fim de recuperar uma informação específica.
CGopherConnection::GetAttribute
Chame essa função membro para recuperar informações de atributo específicas sobre um item do servidor gopher.
BOOL GetAttribute(
CGopherLocator& refLocator CString strRequestedAttributes,
CString& strResult,);
Parâmetros
refLocator
Uma referência a um objeto CGopherLocator.
strRequestedAttributes
Uma cadeia de caracteres delimitada por espaço que especifica os nomes dos atributos solicitados.
strResult
Uma referência a um CString que recebe o tipo de localizador.
Valor de retorno
Diferente de zero se tiver êxito; caso contrário, 0. Se a chamada falhar, a função Win32 GetLastError poderá ser chamada para determinar a causa do erro.
CGopherConnection::OpenFile
Chame essa função membro para abrir um arquivo em um servidor gopher.
CGopherFile* OpenFile(
CGopherLocator& refLocator,
DWORD dwFlags = 0,
LPCTSTR pstrView = NULL,
DWORD_PTR dwContext = 1);
Parâmetros
refLocator
Uma referência a um objeto CGopherLocator.
dwFlags
Qualquer combinação de sinalizadores INTERNET_FLAG_*. Consulte CInternetSession::OpenUrl para obter mais informações sobre sinalizadores INTERNET_FLAG_*.
pstrView
Um ponteiro para uma cadeia de caracteres de exibição de arquivo. Se existirem várias exibições do arquivo no servidor, esse parâmetro especifica qual a exibição de arquivo a ser aberta. Se pstrView for NULL, a exibição de arquivo padrão será usada.
dwContext
A ID de contexto do arquivo que está sendo aberto. Confira Comentários para obter mais informações sobre dwContext.
Valor de retorno
Um ponteiro para o objeto CGopherFile a ser aberto.
Comentários
Substitua o padrão dwContext para definir um valor de sua escolha para o identificador de contexto. O identificador de contexto está associado a essa operação específica do objeto CGopherConnection
criado por seu objeto CInternetSession. O valor é retornado para CInternetSession::OnStatusCallback para fornecer status na operação com a qual ele é identificado. Confira o artigo Primeiras etapas da Internet: WinInet para mais informações sobre o identificador de contexto.
Confira também
Classe CInternetConnection
Gráfico da hierarquia
Classe CFtpConnection
Classe CHttpConnection
Classe CInternetConnection
Classe CGopherLocator
Classe CGopherFile
Classe CInternetSession