Controladores de notificaciones
Una llamada rasDial 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 cada vez que cambia el estado de conexión o se produce 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 los 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.
Value | 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 identificador de conexión HRASCONN y la información de error extendida, además de la información básica. El parámetro de identificador de conexión hace que RasDialFunc1 sea útil 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 | Una 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ón RasDial desde un controlador de notificaciones. Se puede llamar a las demás funciones de acceso remoto ( RasGetConnectStatus, RasEnumEntries, RasEnumConnections, RasGetErrorString y RasHangUp) desde un controlador.