Partilhar via


Classe CGopherConnection

Observação

A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Gere a sua ligação a um servidor de Internet gopher.

Observação

As classes CGopherConnection, CGopherFile, CGopherFileFind, e CGopherLocator os seus membros foram descontinuadas 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 Description
CGopherConnection::CGopherConnection Constrói um CGopherConnection objeto.

Métodos Públicos

Nome Description
CGopherConnection::CreateLocator Cria um objeto CGopherLocator para encontrar ficheiros num servidor gopher.
CGopherConnection::GetAttribute Recupera informações de atributo sobre o objeto gopher.
CGopherConnection::OpenFile Abre um ficheiro gopher.

Observações

O serviço gopher é um dos três serviços de Internet reconhecidos pelas classes MFC WinInet.

A classe CGopherConnection contém um construtor e três funções adicionais que gerem o serviço gopher: OpenFile, CreateLocator e GetAttribute.

Para comunicar com um servidor Gopher Internet, deve primeiro criar uma instância de CInternetSession e depois chamar CInternetSession::GetGopherConnection, que cria o CGopherConnection objeto e devolve um ponteiro para ele. Nunca se cria um CGopherConnection objeto diretamente.

Para saber mais sobre como CGopherConnection funciona com as outras aulas de Internet do MFC, consulte o artigo Programação da Internet com WinInet. Para mais informações sobre a utilização dos outros dois serviços de Internet suportados, FTP e HTTP, consulte as classes CHttpConnection e CFtpConnection.

Hierarquia de herança

CObject

CInternetConnection

CGopherConnection

Requerimentos

Cabeçalho: afxinet.h

CGopherConnection::CGopherConnection

Esta função membro é chamada para construir um CGopherConnection objeto.

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
Um ponteiro para o objeto relacionado CInternetSession .

hLigado
O handle do Windows da sessão atual da Internet.

pstrServer
Um apontador para uma string contendo o nome do servidor FTP.

dwContext
O identificador de contexto da operação. dwContext identifica a informação de estado da operação devolvida por CInternetSession::OnStatusCallback. O padrão é definido para 1; no entanto, pode atribuir explicitamente um ID de contexto específico para a operação. O objeto e qualquer trabalho que ele faça estarão associados a esse ID de contexto.

pstrUserName
Apontador para uma cadeia terminada por null que especifica o nome do utilizador a iniciar sessão. Se for NULL, o padrão é anónimo.

pstrPassword
Um ponteiro para uma cadeia terminada por null que especifica a palavra-passe a usar para iniciar sessão. Se tanto pstrPassword como pstrUserName forem NULL, a palavra-passe anónima padrão é o nome de email do utilizador. Se pstrPassword for NULL (ou uma cadeia vazia) mas pstrUserName não for NULL, usa-se uma palavra-passe em branco. A tabela seguinte descreve o comportamento para as quatro possíveis definições de pstrUserName e pstrPassword:

pstrUserName pstrPassword Nome de utilizador enviado para o servidor FTP Palavra-passe enviada para o servidor FTP
NULL ou " " NULL ou " " "anónimo" Nome do email do utilizador
String não-NULL NULL ou " " pstrUserName " "
NULL Non-NULL String ERROR ERROR
String não-NULL String não-NULL pstrUserName pstrPassword

nPort
Um número que identifica a porta TCP/IP a usar no servidor.

Observações

Nunca se cria um CGopherConnection direto. Em vez disso, chame CInternetSession::GetGopherConnection, que cria um CGopherConnection objeto e devolve um ponteiro para ele.

CGopherConnection::CreateLocator

Chame esta função de membro para criar um localizador de gopher para encontrar ou identificar um ficheiro num 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 apontador para uma string contendo o nome do documento ou diretório gopher a recuperar. Se o parâmetro pstrDisplayString for NULL, o diretório predefinido do servidor gopher é devolvedo.

pstrSelectorString
Um apontador para a string seletora a ser enviado ao servidor gopher para recuperar um item. pstrSelectorString pode ser NULL.

dwGopherType
Isto especifica se pstrSelectorString se refere a um diretório ou documento, e se o pedido é gopher ou gopher+. Veja os atributos da estrutura GOPHER_FIND_DATA no SDK do Windows.

pstrLocator
Um ponteiro para uma string que identifica o ficheiro a abrir. Geralmente, esta cadeia é devolvida a partir de uma chamada para CGopherFileFind::GetLocator.

pstrServerName
Um apontador para uma string que contém o nome do servidor gopher.

nPort
O número que identifica a porta de Internet para esta ligação.

Valor de retorno

Um objeto CGopherLocator .

Observações

A versão estática da função membro exige que especifique um servidor, enquanto a versão não estática usa o nome do servidor do objeto de conexão.

Para recuperar informação de um servidor gopher, uma aplicação deve primeiro obter um localizador gopher. A aplicação deve então tratar o localizador como um token opaco (ou seja, a aplicação pode usar o localizador mas não o manipular ou comparar diretamente). Normalmente, a aplicação utiliza o localizador para chamadas à função membro CGopherFileFind::FindFile para recuperar uma informação específica.

CGopherConnection::GetAttribute

Chame esta função de membro para recuperar informações específicas de atributos 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 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

Não nulo se for bem-sucedido; caso contrário, 0. Se a chamada falhar, pode ser chamada a função Win32 GetLastError para determinar a causa do erro.

CGopherConnection::OpenFile

Chama esta função de membro para abrir um ficheiro num 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 .

dwBandeiras
Qualquer combinação de INTERNET_FLAG_* bandeiras. Consulte CInternetSession::OpenUrl para mais informações sobre flags de INTERNET_FLAG_*.

pstrView
Um ponteiro para uma string de visualização de ficheiros. Se existirem várias vistas do ficheiro no servidor, este parâmetro especifica qual a vista do ficheiro a abrir. Se o pstrView for NULL, é usada a vista de ficheiro por defeito.

dwContext
O ID de contexto do ficheiro a ser aberto. Consulte Observações para mais informações sobre dwContext.

Valor de retorno

Um ponteiro para o objeto CGopherFile a ser aberto.

Observações

Substitua o padrão dwContext para definir o identificador de contexto para um valor à sua escolha. O identificador de contexto está associado a esta operação específica do CGopherConnection objeto criada pelo seu objeto CInternetSession . O valor é devolvido ao CInternetSession::OnStatusCallback para fornecer o estado da operação com a qual foi identificado. Consulte o artigo Internet First Steps: WinInet para mais informações sobre o identificador de contexto.

Consulte também

Classe CInternetConnection
Gráfico de Hierarquia
Classe CFtpConnection
Classe CHttpConnection
Classe CInternetConnection
Classe CGopherLocator
Classe CGopherFile
Classe CInternetSession