Compartir a través de


CGopherConnection (clase)

Administra la conexión a un servidor de Internet de gopher.

Nota:

Las clases CGopherConnection, CGopherFile, CGopherFileFind, CGopherLocator y sus miembros han quedado en desuso porque no funcionan en la plataforma Windows XP, pero seguirán funcionando en las plataformas anteriores.

Sintaxis

class CGopherConnection : public CInternetConnection

Miembros

Constructores públicos

Nombre Descripción
CGopherConnection::CGopherConnection Construye un objeto CGopherConnection.

Métodos públicos

Nombre Descripción
CGopherConnection::CreateLocator Crea un objeto CGopherLocator para buscar archivos en un servidor gopher.
CGopherConnection::GetAttribute Recupera información de atributo sobre el objeto gopher.
CGopherConnection::OpenFile Abra un archivo Gopher.

Comentarios

El servicio gopher es uno de los tres servicios de Internet reconocidos por las clases WinInet de MFC.

La clase CGopherConnection contiene un constructor y tres funciones miembro adicionales que administran el servicio gopher: OpenFile, CreateLocator y GetAttribute.

Para comunicarse con un servidor de Internet gopher, primero debe crear una instancia de CInternetSession y, a continuación, llamar a CInternetSession::GetGopherConnection, que crea el objeto CGopherConnection y devuelve un puntero a él. Nunca se crea un CGopherConnection objeto directamente.

Para obtener más información sobre cómo funciona CGopherConnection con las otras clases de Internet de MFC, vea el artículo Programación de Internet con WinInet. Para obtener más información sobre el uso de los otros dos servicios de Internet compatibles, FTP y HTTP, vea las clases CHttpConnection y CFtpConnection.

Jerarquía de herencia

CObject

CInternetConnection

CGopherConnection

Requisitos

Encabezado: afxinet.h

CGopherConnection::CGopherConnection

Se llama a esta función miembro para construir un 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
Puntero al objeto CInternetSession relacionado.

hConnected
Identificador de Windows de la sesión de Internet actual.

pstrServer
Puntero a una cadena que contiene el nombre del servidor FTP.

dwContext
Identificador de contexto de la operación. dwContext identifica la información de estado de la operación devuelta por CInternetSession::OnStatusCallback. El valor predeterminado se establece en 1; sin embargo, puede asignar explícitamente un identificador de contexto específico para la operación. El objeto y cualquier trabajo que haga se asociarán a ese identificador de contexto.

pstrUserName
Puntero a una cadena terminada en NULL que especifica el nombre del usuario en el que se inicia sesión. Si es NULL, el valor predeterminado es anónimo.

pstrPassword
Puntero a una cadena terminada en NULL que especifica la contraseña que se usará para iniciar sesión. Si tanto pstrPassword como pstrUserName son NULL, la contraseña anónima predeterminada es el nombre de correo electrónico del usuario. Si pstrPassword es NULL (o una cadena vacía) pero pstrUserName no es NULL, se usa una contraseña en blanco. En la tabla siguiente se describe el comportamiento de las cuatro configuraciones posibles de pstrUserName y pstrPassword:

pstrUserName pstrPassword Nombre de usuario enviado al servidor FTP Contraseña enviada al servidor FTP
NULL o " " NULL o " " "anónimo" Nombre de correo electrónico del usuario
Cadena que no es NULL NULL o " " pstrUserName " "
Cadena NULL que no es NULL ERROR ERROR
Cadena que no es NULL Cadena que no es NULL pstrUserName pstrPassword

nPort
Número que identifica el puerto TCP/IP que se usará en el servidor.

Comentarios

CGopherConnection nunca se crea directamente. En su lugar, llame a CInternetSession::GetGopherConnection, que crea un objeto CGopherConnection y devuelve un puntero a él.

CGopherConnection::CreateLocator

Llame a esta función miembro para crear un localizador gopher para buscar o identificar un archivo en un 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
Puntero a una cadena que contiene el nombre del documento o directorio gopher que se va a recuperar. Si el parámetro pstrDisplayString es NULL, se devuelve el directorio predeterminado del servidor gopher.

pstrSelectorString
Puntero a la cadena del selector que se va a enviar al servidor gopher para recuperar un elemento. pstrSelectorString puede ser NULL.

dwGopherType
Esto especifica si pstrSelectorString hace referencia a un directorio o documento y si la solicitud es gopher o gopher+. Consulte los atributos de la estructura GOPHER_FIND_DATA en Windows SDK.

pstrLocator
Puntero a una cadena que identifica el archivo que se va a abrir. Por lo general, esta cadena se devuelve de una llamada a CGopherFileFind::GetLocator.

pstrServerName
Puntero a una cadena que contiene el nombre del servidor gopher.

nPort
Número que identifica el puerto de Internet para esta conexión.

Valor devuelto

Objeto CGopherLocator .

Comentarios

La versión estática de la función miembro requiere que especifique un servidor, mientras que la versión no estática usa el nombre del servidor del objeto de conexión.

Para recuperar información de un servidor gopher, una aplicación primero debe obtener un localizador gopher. Después, la aplicación debe tratar el localizador como un token opaco (es decir, la aplicación puede usar el localizador, pero no manipularlo ni compararlo directamente). Normalmente, la aplicación usa el localizador para las llamadas a CGopherFileFind::FindFile a fin de recuperar un fragmento de información específico.

CGopherConnection::GetAttribute

Llame a esta función miembro para recuperar información de atributo específica sobre un elemento del servidor gopher.

BOOL GetAttribute(
    CGopherLocator& refLocator    CString strRequestedAttributes,
    CString& strResult,);

Parámetros

refLocator
Referencia a un objeto CGopherLocator.

strRequestedAttributes
Cadena delimitada por espacio que especifica los nombres de los atributos solicitados.

strResult
Referencia a un CString que recibe el tipo de localizador.

Valor devuelto

Si es correcta, su valor es distinto de cero. En caso contrario, es cero. Si se produce un error en la llamada, se puede llamar a la función GetLastError de Win32 para determinar la causa del error.

CGopherConnection::OpenFile

Llame a esta función miembro para abrir un archivo en un servidor gopher.

CGopherFile* OpenFile(
    CGopherLocator& refLocator,
    DWORD dwFlags = 0,
    LPCTSTR pstrView = NULL,
    DWORD_PTR dwContext = 1);

Parámetros

refLocator
Referencia a un objeto CGopherLocator.

dwFlags
Cualquier combinación de las marcas INTERNET_ FLAG_*. Consulte CInternetSession::OpenUrl para obtener más información sobre las marcas INTERNET_FLAG_*.

pstrView
Puntero a una cadena de vista de archivo. Si existen varias vistas del archivo en el servidor, este parámetro especifica qué vista de archivo se va a abrir. Si pstrView es NULL, se usa la vista de archivo predeterminada.

dwContext
Identificador de contexto del archivo que se va a abrir. Vea Comentarios para obtener más información sobre dwContext.

Valor devuelto

Puntero al objeto CGopherFile que se va a abrir.

Comentarios

Reemplace el valor predeterminado de dwContextpara establecer el identificador de contexto en un valor que desee. El identificador de contexto está asociado a esta operación específica del objeto CGopherConnection creado por su objeto CInternetSession. El valor se devuelve a CInternetSession::OnStatusCallback para proporcionar el estado de la operación con la que se identifica. Vea el artículo Internet First Steps: WinInet para obtener más información sobre el identificador de contexto.

Consulte también

CInternetConnection (clase)
Gráfico de jerarquías
CFtpConnection (clase)
CHttpConnection (clase)
CInternetConnection (clase)
CGopherLocator (clase)
CGopherFile (clase)
CInternetSession (clase)