共用方式為


CInternetSession::OnStatusCallback

virtual void OnStatusCallback( 
   DWORD_PTR dwContext, 
   DWORD dwInternetStatus, 
   LPVOID lpvStatusInformation, 
   DWORD dwStatusInformationLength  
);

參數

  • dwContext
    應用程式所提供的內容值。

  • dwInternetStatus
    表示狀態碼的回呼的原因而變更。 可能的值為資料表參閱 備註

  • lpvStatusInformation
    out 包含訊息之緩衝區的指標和這個回呼相關。

  • dwStatusInformationLength
    lpvStatusInformation的大小。

備註

您必須先呼叫使用狀態的 EnableStatusCallback 回呼。

dwInternetStatus 參數表示要執行的作業並判斷 lpvStatusInformation 內容會是。 dwStatusInformationLength 表示 lpvStatusInformation包含資料的長度。 dwInternetStatus 的下列狀態值定義如下:

意義

INTERNET_STATUS_RESOLVING_NAME

搜尋在 lpvStatusInformation包含名稱的 IP 位址。

INTERNET_STATUS_NAME_RESOLVED

成功找到了 lpvStatusInformation包含的名稱的 IP 位址。

INTERNET_STATUS_CONNECTING_TO_SERVER

連接到通訊端 (Socket) 位址 ()SOCKADDR指向 lpvStatusInformation。

INTERNET_STATUS_CONNECTED_TO_SERVER

已經成功連接到通訊端 (Socket) 位址 ()SOCKADDR指向 lpvStatusInformation。

INTERNET_STATUS_SENDING_REQUEST

傳送要求至伺服器。 lpvStatusInformation 參數是 NULL

INTERNET_STATUS_ REQUEST_SENT

已成功傳送要求至伺服器。 lpvStatusInformation 參數是 NULL

INTERNET_STATUS_RECEIVING_RESPONSE

等候伺服器回應要求。 lpvStatusInformation 參數是 NULL

INTERNET_STATUS_RESPONSE_RECEIVED

成功接收來自伺服器的回應。 lpvStatusInformation 參數是 NULL

INTERNET_STATUS_CLOSING_CONNECTION

關閉與伺服器的連接。 lpvStatusInformation 參數是 NULL

INTERNET_STATUS_CONNECTION_CLOSED

成功關閉與伺服器的連接。 lpvStatusInformation 參數是 NULL

INTERNET_STATUS_HANDLE_CREATED

由 Win32 API 函式 InternetConnect 表示它所建立的新控制代碼。 如果連接太長的時間,這可讓應用程式呼叫 Win32 函式從另一個執行緒的 InternetCloseHandle 。 請參閱 Windows SDK。如需這些功能的詳細資訊。

INTERNET_STATUS_HANDLE_CLOSING

已順利終止此控制代碼值。

是狀態,回呼常式執行前,請覆寫這個成員函式需要執行一些動作。

注意事項注意事項

狀態回呼需要執行緒狀態保護。如果您在共用程式庫中使用 MFC,請將下列行加入至您的覆寫開頭:

AFX_MANAGE_STATE(AfxGetAppModuleState());

如需非同步作業的詳細資訊,請參閱本文 網際網路第一個步驟:WinInet

需求

Header: afxinet.h

請參閱

參考

CInternetSession 類別

階層架構圖表

CInternetSession::EnableStatusCallback

CInternetSession::GetContext