CInternetSession::EnableStatusCallback

BOOL EnableStatusCallback (BOOL bEnable = TRUE);
Tirar (CInternetException);

Valor devuelto

Distinto de cero si es correcto; 0 lo contrario. Si la llamada falla, determinar la causa del fracaso examinando el objeto echado de CInternetException.

Parámetros

bEnable

Especifica si la devolución de llamada está activada o desactivada. El valor predeterminado es TRUE.

Observaciones

Llamar a esta función miembro para permitir la devolución de llamada de Estado. Al manipular la devolución de llamada de Estado, puede proporcionar estatus acerca del progreso de la operación (tales como resolución de nombre, conectando al servidor etc.) en la barra de estado de la aplicación. Mostrar estado de la operación es especialmente deseable durante una operación a largo plazo.

Puede establecer una rutina de devolución de llamada para operaciones sincrónicas; Sin embargo, debe establecer una rutina de devolución de llamada para las operaciones asincrónicas porque la API asíncrona hace una devolución de llamada con INTERNET_STATUS_REQUEST_COMPLETE para indicar que ha completado la solicitud.

Va a ser una devolución de llamada para una operación asincrónica en un subproceso distinto de la solicitud original. La llamada puede fallar con un error ERROR_IO_PENDING si la solicitud no está completa cuando se produce la devolución de llamada de Estado. La devolución de llamada puede ser callled en un contexto de subproceso distinto del subproceso que inició la solicitud.

Porque las devoluciones de llamada se producen durante el procesamiento de la solicitud, la aplicación debe pasar tan poco tiempo como sea posible en la devolución de llamada para impedir la degradación del rendimiento de los datos a la red. Por ejemplo, poner un cuadro de diálogo en una devolución de llamada puede ser una operación tan larga que el servidor termina la solicitud.

No se puede quitar la devolución de llamada del Estado como las devoluciones de llamada o cualquier función asincrónica está pendiente.

&Notanbsp;  Para manejar cualquier operación asincrónica, se deben establecer tres condiciones:

Para obtener más información acerca de las operaciones asincrónicas, consulte el artículo Internet primeros pasos: WinInet en la Guía del programador de Visual C++.

Introducción a CInternetSession |nbsp; Miembros de clase | Diagrama de jerarquía

Vea tambié&nnbsp;CInternetSession::CInternetSession

Index