使用 MFC WinInet 類別建立網際網路用戶端應用程式
所有網際網路用戶端應用程式的基礎都是網際網路工作階段。 MFC 會將網際網路會話實作為 CInternetSession 類別 的物件。 使用這個類別,您就可以建立一個網際網路工作階段或多個同時執行的工作階段。
若要與伺服器通訊,您需要 CInternet連線ion 物件以及 CInternetSession
。 您可以使用 CInternetSession::GetFtp連線ion、CInternetSession::GetHttp連線ion 或 CInternetSession::GetGopher連線ion 來建立 CInternetConnection
。 這些呼叫都是專屬的通訊協定類型。 這些呼叫不會在伺服器上開啟檔案進行讀取或寫入。 如果要讀取或寫入資料,您必須透過不同的步驟開啟檔案。
對於大部分的網際網路會話, CInternetSession
物件會與 CInternetFile 物件手牽手運作:
針對網際網路會話,您必須建立 CInternetSession 的 實例。
如果您的網際網路會話讀取或寫入資料,您必須建立
CInternetFile
實例(或其子類別、 CHttpFile 或 CGopherFile )。 讀取資料最簡單的方式是呼叫 CInternetSession::OpenURL 。 這個函式會解析您所提供的統一資源定位器 (URL),開啟與以 URL 指定的伺服器連接,並傳回唯讀的CInternetFile
物件。CInternetSession::OpenURL
未專屬於任一通訊協定類型,相同的呼叫可以於 FTP、HTTP 或 gopher URL 上執行。CInternetSession::OpenURL
甚至可搭配本機檔案一起使用 (會傳回CStdioFile
而非CInternetFile
)。如果您的網際網路工作階段沒有讀取或寫入資料,但會執行其他工作 (例如在 FTP 目錄中刪除檔案),則您可能不需要建立
CInternetFile
的執行個體。
建立 CInternetFile
物件的方法有兩種:
如果您使用
CInternetSession::OpenURL
建立您的伺服器連接,則呼叫OpenURL
會傳回CStdioFile
。CInternetSession::GetFtpConnection
如果使用 、GetGopherConnection
或 來建立您的伺服器連線,您必須分別呼叫CFtpConnection::OpenFile
、CGopherConnection::OpenFile
或CHttpConnection::OpenRequest
GetHttpConnection
,才能分別傳回CInternetFile
、CGopherFile
或CHttpFile
。
實作網際網路用戶端應用程式的步驟會因您使用其中 GetConnection
一個函式建立一般網際網路用戶端 OpenURL
或通訊協定特定用戶端而有所不同。
您想要深入瞭解什麼
另請參閱
Win32 網際網路延伸模組 (WinInet)
建立網際網路用戶端應用程式的 MFC 類別
網際網路用戶端類別的必要條件