Controladores de notificaciones
Una llamada deRasDial asincrónica debe especificar un controlador de notificaciones. Durante una operación de conexión asincrónica, el Administrador de conexiones de acceso remoto usa el controlador de notificaciones para informar al cliente RAS siempre que el estado de conexión de cambie o se produzca un error.
Las acciones realizadas por un controlador de notificaciones se pueden dividir en las siguientes categorías:
- Control de errores.
- Proporcionar comentarios al usuario a medida que la operación de conexión continúa a través de los distintos estados de conexión. Consulte Notificaciones informativas.
- Control de estados en pausa.
- Señalización de la aplicación cliente RAS cuando se ha completado la operación de conexión. Consulte Notificaciones de finalización.
Hay tres tipos de controladores de notificación, cada uno de los cuales recibe la misma información básica: el estado de conexión actual y un código de error que no es cero solo si se ha producido un error.
Valor | Definición |
---|---|
RasDialFunc | Prototipo de función de devolución de llamada que recibe solo el estado de conexión actual y la información del código de error. |
RasDialFunc1 | Prototipo de función de devolución de llamada que recibe el HRASCONN identificador de conexión y información de error extendida además de la información básica. El parámetro de identificador de conexión hace que RasDialFunc1 útiles para las aplicaciones cliente que admiten varias operaciones de conexión simultáneas. Esto permite al cliente especificar la misma función de devolución de llamada para todas las operaciones y permite que la función de devolución de llamada determine qué conexión cambia los estados. |
RasDialFunc2 | Función de devolución de llamada similar a RasDialFunc1. Sin embargo, RasDialFunc2 se ha mejorado para admitir conexiones de varios vínculos. |
Identificador de ventana | Identificador de ventana al que RAS envía WM_RASDIALEVENT mensajes que contienen el estado de conexión actual y la información del código de error. Use este método si el código fuente debe ser compatible con Windows de 16 bits, ya que Windows de 16 bits no admite ninguna de las funciones de devolución de llamada. |
El Administrador de conexiones de acceso remoto suspende la operación de conexión hasta que el controlador de notificaciones vuelva. Por este motivo, el controlador debe devolver lo antes posible a menos que se haya producido un error.
No se debe llamar a la funciónRasDial desde un controlador de notificaciones. Las demás funciones de acceso remoto ( RasGetConnectStatus, RasEnumEntries, RasEnumConnections, RasGetErrorStringy RasHangUp) se pueden llamar desde un controlador.