Classe CGopherConnection
Gestisce la connessione a un server Internet gopher.
Nota
Le classi CGopherConnection
, CGopherFile
, CGopherFileFind
e CGopherLocator
i relativi membri sono stati deprecati perché non funzionano sulla piattaforma Windows XP, ma continueranno a funzionare su piattaforme precedenti.
Sintassi
class CGopherConnection : public CInternetConnection
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
CGopherConnection::CGopherConnection | Costruisce un oggetto CGopherConnection . |
Metodi pubblici
Nome | Descrizione |
---|---|
CGopherConnection::CreateLocator | Crea un oggetto CGopherLocator per trovare i file in un server gopher. |
CGopherConnection::GetAttribute | Recupera le informazioni sull'attributo sull'oggetto gopher. |
CGopherConnection::OpenFile | Apre un file gopher. |
Osservazioni:
Il servizio gopher è uno dei tre servizi Internet riconosciuti dalle classi WinInet MFC.
La classe CGopherConnection
contiene un costruttore e tre funzioni membro aggiuntive che gestiscono il servizio gopher: OpenFile, CreateLocator e GetAttribute.
Per comunicare con un server Internet gopher, è prima necessario creare un'istanza di CInternetSession e quindi chiamare CInternetSession::GetGopherConnection, che crea l'oggetto CGopherConnection
e restituisce un puntatore. Non si crea mai direttamente un CGopherConnection
oggetto.
Per altre informazioni sul CGopherConnection
funzionamento delle altre classi Internet MFC, vedere l'articolo Programmazione Internet con WinInet. Per altre informazioni sull'uso degli altri due servizi Internet supportati, FTP e HTTP, vedere le classi CHttpConnection e CFtpConnection.
Gerarchia di ereditarietà
CGopherConnection
Requisiti
Intestazione: afxinet.h
CGopherConnection::CGopherConnection
Questa funzione membro viene chiamata per costruire un CGopherConnection
oggetto .
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);
Parametri
pSession
Puntatore all'oggetto CInternetSession correlato.
hConnected
Handle di Windows della sessione Internet corrente.
pstrServer
Puntatore a una stringa contenente il nome del server FTP.
dwContext
Identificatore di contesto per l'operazione . dwContext identifica le informazioni sullo stato dell'operazione restituite da CInternetSession::OnStatusCallback. Il valore predefinito è impostato su 1; Tuttavia, è possibile assegnare in modo esplicito un ID contesto specifico per l'operazione. L'oggetto e qualsiasi operazione eseguita verrà associato a tale ID contesto.
pstrUserName
Puntatore a una stringa con terminazione Null che specifica il nome dell'utente da accedere. Se NULL, il valore predefinito è anonimo.
pstrPassword
Puntatore a una stringa con terminazione Null che specifica la password da usare per l'accesso. Se pstrPassword e pstrUserName sono NULL, la password anonima predefinita è il nome di posta elettronica dell'utente. Se pstrPassword è NULL (o una stringa vuota) ma pstrUserName non è NULL, viene usata una password vuota. La tabella seguente descrive il comportamento per le quattro possibili impostazioni di pstrUserName e pstrPassword:
pstrUserName | pstrPassword | Nome utente inviato al server FTP | Password inviata al server FTP |
---|---|---|---|
NULL o " " | NULL o " " | "anonimo" | Nome di posta elettronica dell'utente |
Stringa non NULL | NULL o " " | pstrUserName | " " |
Stringa NULL non NULL | ERROR | ERROR | |
Stringa non NULL | Stringa non NULL | pstrUserName | pstrPassword |
nPort
Numero che identifica la porta TCP/IP da usare nel server.
Osservazioni:
Non si crea mai direttamente un oggetto CGopherConnection
. Chiama invece CInternetSession::GetGopherConnection, che crea un CGopherConnection
oggetto e restituisce un puntatore.
CGopherConnection::CreateLocator
Chiamare questa funzione membro per creare un localizzatore gopher per trovare o identificare un file in un server 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);
Parametri
pstrDisplayString
Puntatore a una stringa contenente il nome del documento o della directory gopher da recuperare. Se il parametro pstrDisplayString è NULL, viene restituita la directory predefinita per il server gopher.
pstrSelectorString
Puntatore alla stringa del selettore da inviare al server gopher per recuperare un elemento. pstrSelectorString può essere NULL.
dwGopherType
Specifica se pstrSelectorString fa riferimento a una directory o a un documento e se la richiesta è gopher o gopher+. Vedere gli attributi per la struttura GOPHER_FIND_DATA in Windows SDK.
pstrLocator
Puntatore a una stringa che identifica il file da aprire. In genere, questa stringa viene restituita da una chiamata a CGopherFileFind::GetLocator.
pstrServerName
Puntatore a una stringa contenente il nome del server gopher.
nPort
Numero che identifica la porta Internet per questa connessione.
Valore restituito
Oggetto CGopherLocator .
Osservazioni:
La versione statica della funzione membro richiede di specificare un server, mentre la versione non statica utilizza il nome del server dall'oggetto connessione.
Per recuperare informazioni da un server gopher, un'applicazione deve prima ottenere un localizzatore gopher. L'applicazione deve quindi considerare il localizzatore come token opaco, ovvero l'applicazione può usare il localizzatore, ma non modificarlo o confrontarlo direttamente. In genere, l'applicazione usa il localizzatore per le chiamate alla funzione membro CGopherFileFind::FindFile per recuperare un'informazione specifica.
CGopherConnection::GetAttribute
Chiamare questa funzione membro per recuperare informazioni specifiche sull'attributo relative a un elemento dal server gopher.
BOOL GetAttribute(
CGopherLocator& refLocator CString strRequestedAttributes,
CString& strResult,);
Parametri
refLocator
Riferimento a un oggetto CGopherLocator .
strRequestedAttributes
Stringa delimitata da spazi che specifica i nomi degli attributi richiesti.
strResult
Riferimento a un oggetto CString che riceve il tipo di localizzatore.
Valore restituito
Diverso da zero se ha esito positivo; in caso contrario 0. Se la chiamata non riesce, è possibile chiamare la funzione Win32 GetLastError per determinare la causa dell'errore.
CGopherConnection::OpenFile
Chiamare questa funzione membro per aprire un file in un server gopher.
CGopherFile* OpenFile(
CGopherLocator& refLocator,
DWORD dwFlags = 0,
LPCTSTR pstrView = NULL,
DWORD_PTR dwContext = 1);
Parametri
refLocator
Riferimento a un oggetto CGopherLocator .
dwFlags
Qualsiasi combinazione di flag INTERNET_FLAG_*. Per altre informazioni sui flag INTERNET_FLAG_*, vedere CInternetSession::OpenUrl .
pstrView
Puntatore a una stringa di visualizzazione file. Se nel server esistono diverse visualizzazioni del file, questo parametro specifica la visualizzazione file da aprire. Se pstrView è NULL, viene usata la visualizzazione file predefinita.
dwContext
ID di contesto per il file da aprire. Per altre informazioni su dwContext, vedere Osservazioni.
Valore restituito
Puntatore all'oggetto CGopherFile da aprire.
Osservazioni:
Eseguire l'override dell'impostazione predefinita dwContext per impostare l'identificatore di contesto su un valore scelto. L'identificatore di contesto è associato a questa operazione specifica dell'oggetto CGopherConnection
creato dal relativo oggetto CInternetSession . Il valore viene restituito a CInternetSession::OnStatusCallback per fornire lo stato sull'operazione con cui viene identificato. Per altre informazioni sull'identificatore di contesto, vedere l'articolo Passaggi preliminari su Internet: WinInet .
Vedi anche
Classe CInternetConnection
Grafico della gerarchia
Classe CFtpConnection
Classe CHttpConnection
Classe CInternetConnection
Classe CGopherLocator
Classe CGopherFile
Classe CInternetSession