共用方式為


Windows Sockets:從通訊端類別衍生

本文說明從其中一個通訊端類別衍生您自己的類別,即可取得的一些功能。

您可以從 CAsyncSocket 或 CSocket 衍生自己的通訊端類別 ,以新增自己的功能。 特別是,這些類別會提供一些您可以覆寫的虛擬成員函式。 這些函式包括 OnReceive OnSend 、OnAccept On連線 和 OnClose 。 您可以覆寫衍生通訊端類別中的函式,以利用它們在發生網路事件時所提供的通知。 架構會呼叫這些通知回呼函式來通知您重要的通訊端事件,例如可以開始讀取的資料接收。 如需通知函式的詳細資訊,請參閱 Windows 通訊端:通訊端通知

此外,類別 CSocket 提供 OnMessagePending 成員函式(進階可覆寫)。 MFC 會在通訊端提取 Windows 型訊息時呼叫此函式。 您可以覆寫 OnMessagePending 以尋找來自 Windows 的特定訊息並加以回應。

類別 CSocket 中提供的預設版本 OnMessagePending 會在等候封鎖呼叫完成時,檢查訊息佇列中的WM_PAINT訊息。 它會分派繪製訊息以改善顯示品質。 除了做一些實用的事情之外,這說明您可以自行覆寫函式的一種方式。 另一個範例,請考慮使用 OnMessagePending 下列工作。 假設您在等候網路交易完成時顯示無強制回應對話方塊。 對話方塊包含一個 [取消] 按鈕,使用者可用來取消花費太久的封鎖交易。 您的 OnMessagePending 覆寫可能會提取與此無強制回應對話方塊相關的訊息。

在您的 OnMessagePending 覆寫中,傳回 TRUE 或從 的基類版本 OnMessagePending 呼叫傳回 。 如果基類版本執行您仍想要完成的工作,請呼叫基類版本。

如需詳細資訊,請參閱

另請參閱

MFC 中的 Windows Sockets