CInternetSession::OnStatusCallback
상태 콜백이 활성화 된 경우 보류 되어 있는 작업 상태를 업데이트 하는 프레임 워크에서이 멤버 함수를 호출 합니다.
virtual void OnStatusCallback(
DWORD_PTR dwContext,
DWORD dwInternetStatus,
LPVOID lpvStatusInformation,
DWORD dwStatusInformationLength
);
매개 변수
dwContext
응용 프로그램에서 제공 된 컨텍스트 값입니다.dwInternetStatus
콜백을 쓰게 되는 이유를 나타내는 상태 코드입니다.참조 비고 테이블의 가능한 값.lpvStatusInformation
이 콜백을 관련 정보를 포함 하는 버퍼에 대 한 포인터입니다.dwStatusInformationLength
크기의 lpvStatusInformation.
설명
먼저 호출 해야 EnableStatusCallback 상태 콜백 기능을 활용 합니다.
dwInternetStatus 매개 변수 수행 되는 작업을 나타내며 어떤 내용의 결정 lpvStatusInformation 수 있습니다.dwStatusInformationLength포함 된 데이터의 길이가 lpvStatusInformation.다음 상태 값에 대 한 dwInternetStatus 는 다음과 같이 정의 됩니다.
값 |
의미 |
---|---|
INTERNET_STATUS_RESOLVING_NAME |
이름에 포함 된 IP 주소 조회 lpvStatusInformation. |
INTERNET_STATUS_NAME_RESOLVED |
이름에 포함 된 IP 주소를 성공적으로 찾을 수 lpvStatusInformation. |
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());
비동기 작업에 대 한 자세한 내용은 인터넷 첫 번째 단계: WinInet.
요구 사항
헤더: afxinet.h