共用方式為


使用 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::OpenFileCGopherConnection::OpenFileCHttpConnection::OpenRequestGetHttpConnection ,才能分別傳回 CInternetFileCGopherFileCHttpFile

實作網際網路用戶端應用程式的步驟會因您使用其中 GetConnection 一個函式建立一般網際網路用戶端 OpenURL 或通訊協定特定用戶端而有所不同。

您想要深入瞭解什麼

另請參閱

Win32 網際網路延伸模組 (WinInet)
建立網際網路用戶端應用程式的 MFC 類別
網際網路用戶端類別的必要條件