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
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)