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