CGopherConnection 類別
管理您與 Gopher 網際網路伺服器的連接。
注意
類別 CGopherConnection
、 CGopherFile
、 CGopherFileFind
CGopherLocator
和 其成員已被取代,因為它們無法在 Windows XP 平臺上運作,但他們會繼續在舊版平臺上運作。
語法
class CGopherConnection : public CInternetConnection
成員
公用建構函式
名稱 | 描述 |
---|---|
CGopher連線ion::CGopher連線ion | 建構 CGopherConnection 物件。 |
公用方法
名稱 | 描述 |
---|---|
CGopher連線ion::CreateLocator | 建立 CGopherLocator 物件,以在 Gopher 伺服器上尋找檔案。 |
CGopher連線ion::GetAttribute | 擷取 gopher 物件的屬性資訊。 |
CGopher連線ion::OpenFile | 開啟 gopher 檔案。 |
備註
Gopher 服務是 MFC WinInet 類別所辨識的三個網際網路服務之一。
類別 CGopherConnection
包含一個建構函式和三個額外的成員函式,可管理 gopher 服務: OpenFile 、 CreateLocator 和 GetAttribute 。
若要與 Gopher 網際網路伺服器通訊,您必須先建立 CInternetSession 的 實例,然後呼叫 CInternetSession ::GetGopher連線ion ,這會建立 CGopherConnection
物件並傳回它的指標。 您永遠不會直接建立 CGopherConnection
物件。
若要深入瞭解如何使用 CGopherConnection
其他 MFC 網際網路類別,請參閱使用 WinInet 進行網際網路程式設計一文 。 如需使用其他兩個支援的網際網路服務的詳細資訊,FTP 和 HTTP 請參閱 CHttp連線ion 和 CFtp連線ion 類別 。
繼承階層架構
CGopherConnection
需求
標頭: afxinet.h
CGopher連線ion::CGopher連線ion
呼叫這個成員函式來建構 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);
參數
pSession
相關 CInternetSession 物件的指標。
h連線ed
目前網際網路會話的 Windows 控制碼。
pstrServer
包含 FTP 伺服器名稱之字串的指標。
dwCoNtext
作業的內容識別碼。 dwCoNtext 會識別 CInternetSession::OnStatusCallback 所 傳回的作業狀態資訊。 預設值設定為 1;不過,您可以明確指派作業的特定內容識別碼。 物件及其執行的任何工作都會與該內容識別碼相關聯。
pstrUserName
Null 終止字串的指標,指定要登入的使用者名稱。 如果為 Null,則預設值為匿名。
pstrPassword
Null 終止字串的指標,指定要用來登入的密碼。 如果 pstrPassword 和 pstrUserName 都是 Null,則預設的匿名密碼是使用者的電子郵件名稱。 如果 pstrPassword 為 Null(或空字串),但 pstrUserName 不是 Null,則會使用空白密碼。 下表描述 pstrUserName 和 pstrPassword 四種可能設定 的行為:
pstrUserName | pstrPassword | 傳送至 FTP 伺服器的使用者名稱 | 傳送至 FTP 伺服器的密碼 |
---|---|---|---|
Null 或 」 | Null 或 」 | 「anonymous」 | 使用者的電子郵件名稱 |
非 Null 字串 | Null 或 」 | pstrUserName | " " |
Null 非 Null 字串 | 錯誤 | 錯誤 | |
非 Null 字串 | 非 Null 字串 | pstrUserName | pstrPassword |
nPort
數位,識別伺服器上要使用的 TCP/IP 埠。
備註
您永遠不會直接建立 CGopherConnection
。 相反地,呼叫 CInternetSession::GetGopher連線ion ,這會建立 CGopherConnection
物件並傳回它的指標。
CGopher連線ion::CreateLocator
呼叫此成員函式來建立 gopher 定位器,以尋找或識別 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);
參數
pstrDisplayString
字串的指標,其中包含要擷取之 gopher 檔或目錄的名稱。 如果 pstrDisplayString 參數為 Null,則會傳回 Gopher 伺服器的預設目錄。
pstrSelectorString
要傳送至 Gopher 伺服器的選取器字串指標,以便擷取專案。 pstrSelectorString 可以是 Null。
dwGopherType
這會指定 pstrSelectorString 是否參考目錄或檔,以及要求是 gopher 或 gopher+。 請參閱 Windows SDK 中結構 GOPHER_FIND_DATA 的屬性。
pstrLocator
字串的指標,識別要開啟的檔案。 一般而言,此字串會從 CGopherFileFind::GetLocator 的呼叫 傳回。
pstrServerName
包含 Gopher 伺服器名稱之字串的指標。
nPort
識別此連線之網際網路埠的數位。
傳回值
CGopherLocator 物件。
備註
成員函式的靜態版本需要您指定伺服器,而非靜態版本則使用連線物件中的伺服器名稱。
若要從 Gopher 伺服器擷取資訊,應用程式必須先取得 Gopher 定位器。 然後,應用程式必須將定位器視為不透明的權杖(也就是說,應用程式可以使用定位器,但不能直接操作或比較它)。 一般而言,應用程式會使用定位器呼叫 CGopherFileFind::FindFile 成員函式來擷取特定資訊片段。
CGopher連線ion::GetAttribute
呼叫這個成員函式,從 Gopher 伺服器擷取專案的特定屬性資訊。
BOOL GetAttribute(
CGopherLocator& refLocator CString strRequestedAttributes,
CString& strResult,);
參數
refLocator
CGopherLocator 物件的參考 。
strRequestedAttributes
以空格分隔的字串,指定要求的屬性名稱。
strResult
接收定位器類型的 CString 參考 。
傳回值
如果成功則為非零;否則為 0。 如果呼叫失敗,可能會呼叫 Win32 函式 GetLastError 來判斷錯誤的原因。
CGopher連線ion::OpenFile
呼叫此成員函式以在 Gopher 伺服器上開啟檔案。
CGopherFile* OpenFile(
CGopherLocator& refLocator,
DWORD dwFlags = 0,
LPCTSTR pstrView = NULL,
DWORD_PTR dwContext = 1);
參數
refLocator
CGopherLocator 物件的參考 。
dwFlags
INTERNET_FLAG_* 旗標的任何組合。 如需INTERNET_FLAG_* 旗標的詳細資訊,請參閱 CInternetSession::OpenUrl 。
pstrView
檔案檢視字串的指標。 如果伺服器上的檔案有數個檢視,此參數會指定要開啟的檔案檢視。 如果 pstrView 是 Null,則會使用預設檔案檢視。
dwCoNtext
要開啟之檔案的內容識別碼。 如需 dwCoNtext 的詳細資訊 , 請參閱 。
傳回值
要開啟之 CGopherFile 物件的指標。
備註
覆寫 dwCoNtext 預設值,將內容識別碼設定為您選擇的值。 內容識別碼會與其 CInternetSession 物件所 建立之 CGopherConnection
物件的這個特定作業相關聯。 值會傳回至 CInternetSession::OnStatusCallback ,以提供其識別作業的狀態。 如需內容識別碼的詳細資訊,請參閱網際網路第一個步驟:WinInet 一文 。
另請參閱
CInternetConnection 類別
階層架構圖表
CFtpConnection 類別
CHttpConnection 類別
CInternetConnection 類別
CGopherLocator 類別
CGopherFile 類別
CInternetSession 類別
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應