Klasa CGopherConnection
Zarządza połączeniem z serwerem internetowym gopher.
Uwaga
Klasy CGopherConnection
, CGopherFile
, CGopherFileFind
CGopherLocator
i ich składowe zostały przestarzałe, ponieważ nie działają na platformie Windows XP, ale będą nadal działać na wcześniejszych platformach.
Składnia
class CGopherConnection : public CInternetConnection
Elementy członkowskie
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
CGopherConnection::CGopherConnection | CGopherConnection Tworzy obiekt. |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CGopherConnection::CreateLocator | Tworzy obiekt CGopherLocator w celu znalezienia plików na serwerze gopher. |
CGopherConnection::GetAttribute | Pobiera informacje o atrybucie obiektu gopher. |
CGopherConnection::OpenFile | Otwiera plik gopher. |
Uwagi
Usługa gopher jest jedną z trzech usług internetowych rozpoznawanych przez klasy MFC WinInet.
Klasa CGopherConnection
zawiera konstruktor i trzy dodatkowe funkcje składowe, które zarządzają usługą gopher: OpenFile, CreateLocator i GetAttribute.
Aby komunikować się z serwerem internetowym gopher, należy najpierw utworzyć wystąpienie CInternetSession, a następnie wywołać polecenie CInternetSession::GetGopherConnection, który tworzy CGopherConnection
obiekt i zwraca do niego wskaźnik. Nigdy nie tworzysz CGopherConnection
obiektu bezpośrednio.
Aby dowiedzieć się więcej o CGopherConnection
sposobie pracy z innymi klasami internetowymi MFC, zobacz artykuł Programowanie internetowe za pomocą usługi WinInet. Aby uzyskać więcej informacji na temat korzystania z dwóch pozostałych obsługiwanych usług internetowych, FTP i HTTP zobacz klasy CHttpConnection i CFtpConnection.
Hierarchia dziedziczenia
CGopherConnection
Wymagania
Nagłówek: afxinet.h
CGopherConnection::CGopherConnection
Ta funkcja składowa jest wywoływana w celu skonstruowania CGopherConnection
obiektu.
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);
Parametry
PSession
Wskaźnik do powiązanego obiektu CInternetSession .
hPołączone
Obsługa systemu Windows bieżącej sesji internetowej.
pstrServer
Wskaźnik do ciągu zawierającego nazwę serwera FTP.
dwContext
Identyfikator kontekstu operacji. dwContext identyfikuje informacje o stanie operacji zwrócone przez CInternetSession::OnStatusCallback. Wartość domyślna to 1; Można jednak jawnie przypisać określony identyfikator kontekstu dla operacji. Obiekt i wszystkie wykonywane prace zostaną skojarzone z tym identyfikatorem kontekstu.
pstrUserName
Wskaźnik do ciągu zakończonego wartości null, który określa nazwę użytkownika do zalogowania. Jeśli wartość NULL, wartość domyślna to anonimowe.
pstrPassword
Wskaźnik do ciągu zakończonego wartością null, który określa hasło używane do logowania. Jeśli zarówno pstrPassword , jak i pstrUserName mają wartość NULL, domyślne anonimowe hasło to nazwa e-mail użytkownika. Jeśli parametr pstrPassword ma wartość NULL (lub pusty ciąg), ale parametr pstrUserName nie ma wartości NULL, używane jest puste hasło. W poniższej tabeli opisano zachowanie czterech możliwych ustawień pstrUserName i pstrPassword:
pstrUserName | pstrPassword | Nazwa użytkownika wysłana do serwera FTP | Hasło wysyłane do serwera FTP |
---|---|---|---|
NULL lub " " | NULL lub " " | "anonimowy" | Nazwa e-mail użytkownika |
Ciąg bez wartości NULL | NULL lub " " | pstrUserName | " " |
Ciąg o wartości null inny niż NULL | BŁĄD | BŁĄD | |
Ciąg bez wartości NULL | Ciąg bez wartości NULL | pstrUserName | pstrPassword |
nPort
Numer identyfikujący port TCP/IP do użycia na serwerze.
Uwagi
Nigdy nie tworzysz bezpośrednio CGopherConnection
. Zamiast tego wywołaj metodę CGopherConnection
CInternetSession::GetGopherConnection, która tworzy obiekt i zwraca do niego wskaźnik.
CGopherConnection::CreateLocator
Wywołaj tę funkcję składową, aby utworzyć lokalizator gopher, aby znaleźć lub zidentyfikować plik na serwerze 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);
Parametry
pstrDisplayString
Wskaźnik do ciągu zawierającego nazwę dokumentu lub katalogu, który ma zostać pobrany. Jeśli parametr pstrDisplayString ma wartość NULL, zostanie zwrócony domyślny katalog serwera gopher.
pstrSelectorString
Wskaźnik do ciągu selektora, który ma zostać wysłany do serwera gopher w celu pobrania elementu. wartość pstrSelectorString może mieć wartość NULL.
dwGopherType
Określa, czy pstrSelectorString odwołuje się do katalogu lub dokumentu, i czy żądanie jest gopher lub gopher+. Zobacz atrybuty struktury GOPHER_FIND_DATA w zestawie Windows SDK.
pstrLocator
Wskaźnik do ciągu identyfikującego plik do otwarcia. Zazwyczaj ten ciąg jest zwracany z wywołania metody CGopherFileFind::GetLocator.
pstrServerName
Wskaźnik do ciągu zawierającego nazwę serwera gopher.
nPort
Numer identyfikujący port internetowy dla tego połączenia.
Wartość zwracana
Uwagi
Statyczna wersja funkcji składowej wymaga określenia serwera, podczas gdy wersja niestatyczna używa nazwy serwera z obiektu połączenia.
Aby pobrać informacje z serwera gopher, aplikacja musi najpierw uzyskać lokalizator gopher. Aplikacja musi następnie traktować lokalizator jako nieprzezroczystym tokenem (czyli aplikacja może używać lokalizatora, ale nie bezpośrednio manipulować ani porównywać). Zwykle aplikacja używa lokalizatora do wywołań funkcji składowej CGopherFileFind::FindFile w celu pobrania określonej informacji.
CGopherConnection::GetAttribute
Wywołaj tę funkcję składową, aby pobrać określone informacje o atrybucie o elemencie z serwera gopher.
BOOL GetAttribute(
CGopherLocator& refLocator CString strRequestedAttributes,
CString& strResult,);
Parametry
refLocator
Odwołanie do obiektu CGopherLocator .
strRequestedAttributes
Rozdzielany spacjami ciąg określający nazwy żądanych atrybutów.
strResult
Odwołanie do obiektu CString odbierającego typ lokalizatora.
Wartość zwracana
Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0. Jeśli wywołanie zakończy się niepowodzeniem, funkcja Win32 GetLastError może zostać wywołana, aby określić przyczynę błędu.
CGopherConnection::OpenFile
Wywołaj tę funkcję składową, aby otworzyć plik na serwerze gopher.
CGopherFile* OpenFile(
CGopherLocator& refLocator,
DWORD dwFlags = 0,
LPCTSTR pstrView = NULL,
DWORD_PTR dwContext = 1);
Parametry
refLocator
Odwołanie do obiektu CGopherLocator .
dwFlags
Dowolna kombinacja flag INTERNET_FLAG_*. Aby uzyskać więcej informacji na temat flag INTERNET_FLAG_*, zobacz CInternetSession::OpenUrl .
pstrView
Wskaźnik do ciągu widoku pliku. Jeśli na serwerze istnieje kilka widoków pliku, ten parametr określa widok pliku do otwarcia. Jeśli element pstrView ma wartość NULL, zostanie użyty domyślny widok pliku.
dwContext
Identyfikator kontekstu otwieranego pliku. Zobacz Uwagi , aby uzyskać więcej informacji na temat dwContext.
Wartość zwracana
Wskaźnik do obiektu CGopherFile do otwarcia.
Uwagi
Zastąpij wartość domyślną dwContext , aby ustawić identyfikator kontekstu na wartość wybranej wartości. Identyfikator kontekstu jest skojarzony z tą konkretną operacją obiektu utworzonego CGopherConnection
przez obiekt CInternetSession . Wartość jest zwracana do CInternetSession::OnStatusCallback , aby podać stan operacji, z którą została zidentyfikowana. Aby uzyskać więcej informacji na temat identyfikatora kontekstu, zobacz artykuł Internet First Steps: WinInet (Internet First Steps: WinInet: WinInet ).
Zobacz też
Klasa CInternetConnection
Wykres hierarchii
Klasa CFtpConnection
Klasa CHttpConnection
Klasa CInternetConnection
Klasa CGopherLocator
Klasa CGopherFile
Klasa CInternetSession