CInternetSession::OnStatusCallback

此成员函数由框架调用更新其状态,在状态回调处于启用状态,并执行挂起。

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

参数

  • dwContext
    应用程序提供值的上下文。

  • dwInternetStatus
    指示状态的代码回调原因进行。为可能的值表参见 Remarks

  • lpvStatusInformation
    对包含信息的缓冲区的指针和此回调相关。

  • 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

连接到套接字地址(SOCKADDR)指向由 lpvStatusInformation。

INTERNET_STATUS_CONNECTED_TO_SERVER

成功连接到套接字地址(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());

有关异步操作的更多信息,请参见文章 Internet第一步:WinInet

要求

Header: afxinet.h

请参见

参考

CInternetSession选件类

层次结构图

CInternetSession::EnableStatusCallback

CInternetSession::GetContext