從通訊端類別衍生的 Windows 通訊端:
本文將說明一些您可以取得從通訊端類別的其中一個類別衍生您自己的類別的功能。
您可以從任何一個衍生您自己的通訊端類別 CAsyncSocket 或 CSocket ,將您自己的功能。 特別是,這些類別會提供一些您可以覆寫虛擬成員函式。 這些功能包括 OnReceive, OnSend, OnAccept, OnConnect,以及 OnClose。 您可以覆寫函式,在您的衍生通訊端類別,以善用網路事件發生時它們所提供的告知。 架構呼叫這些告知回呼函式來通知您重要的通訊端事件,例如接收的資料您就可以開始讀取。 如需有關告知函式的詳細資訊,請參閱 Windows 通訊端: 通訊端通知。
此外,類別CSocket提供 OnMessagePending 成員函式 (進階可覆寫)。 通訊端會提取 windows 訊息時,MFC 就會呼叫這個函式。 您可以覆寫OnMessagePending從 Windows 尋找特定的訊息,並加以回應。
預設版本的OnMessagePending類別中提供CSocket會檢查訊息佇列的WM_PAINT在等候封鎖呼叫完成時的訊息。 它分派繪製訊息以改善顯示品質。 除了從做一些有用的事,這說明了其中一種方式,您可能會覆寫此函式自行。 另一個範例,請考慮使用OnMessagePending為下列工作。 假設您在等候網路交易完成時顯示非強制回應對話方塊。 對話方塊包含 [取消] 按鈕,使用者可以用來取消封鎖的交易,花太長的時間。 您OnMessagePending覆寫可能幫浦與非強制回應對話方塊相關的訊息。
在您OnMessagePending覆寫,傳回 ,則為 TRUE 或從呼叫的基底類別版本傳回OnMessagePending。 如果它執行取決於您所需要的完成工作,請呼叫基底類別版本。
如需詳細資訊,請參閱: