Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Cuando una llamada está activa en LINEBEARERMODE_PASSTHROUGH, el proveedor de servicios proporciona acceso directo al hardware asociado para controlarlo la aplicación. Las aplicaciones pueden usar este modo para el control directo temporal sobre módems asincrónicos, a los que se accede a través de las funciones de comunicaciones , con el fin de configurar o usar características especiales no admitidas por el proveedor de servicios, como facsimile (clase 1, 2, etc.). Este modo de portador es compatible con el proveedor de servicios Universal Modem Driver (UNIMODEM).
Los proveedores de servicios que admiten LINEBEARERMODE_PASSTHROUGH lo indican en el miembro dwBearerModes de la estructuraLINEDEVCAPS de. Cuando se indica LINEBEARERMODE_PASSTHROUGH, el proveedor de servicios Unimodem también incluirá en el área de DevSpecific del LINEDEVCAPS estructura la clave del Registro utilizada para acceder a los datos sobre el módem asociado al dispositivo de línea, en el siguiente formato:
struct {
DWORD dwContents; // Set to 1 (indicates containing key).
DWORD dwKeyOffset; // Offset to key from start of this
// structure (not from start of
// LINEDEVCAPS structure).
// 8 in this case.
BYTE rgby[...]; // Place that contains null-terminated
// registry key.
}
Por ejemplo:
00000001 00000008 74737953 435c6d65 ........System\C
65727275 6f43746e 6f72746e 7465536c urrentControlSet
7265535c 65636976 6c435c73 5c737361 urrentControlSet
65646f4d 30305c6d xx003030 xxxxxxxx Modem\0000.
A continuación, esta clave del Registro se puede abrir mediante la funciónregOpenKey.
El modo de paso a través se invoca con más frecuencia mediante la función lineMakeCall, estableciendo el bit de LINEBEARERMODE_PASSTHROUGH en el dwBearerMode miembro del LINECALLPARAMS estructura apuntada por el parámetro lpCallParams. Cuando esto se hace, el proveedor de servicios abre el puerto serie al módem y coloca inmediatamente la llamada en LINECALLSTATE_CONNECTED. Después, la aplicación puede usar la función lineGetID con la clase de dispositivo "comm/datamodem" para obtener un identificador de archivo abierto para leer y escribir en el puerto comm.
El modo de acceso directo también se puede invocar en respuesta a una llamada entrante. Por lo general, las aplicaciones invocarán el modo de acceso directo mientras la llamada está en LINECALLSTATE_OFFERING, antes de que se haya respondido a la llamada. En lugar de llamar a lineAnswer, la aplicación llama a lineSetCallParams, pasando LINEBEARERMODE_PASSTHROUGH como parámetro dwBearerMode. Cuando esto se hace, al igual que con lineMakeCall, la llamada se coloca inmediatamente en LINECALLSTATE_CONNECTED por el proveedor de servicios y la aplicación puede obtener un identificador para el puerto abierto mediante lineGetID. Se puede llamar a la función lineSetCallParams cuando la llamada está en LINECALLSTATE_OFFERING, LINECALLSTATE_ACCEPTEDo LINECALLSTATE_CONNECTED.
Normalmente, el modo de acceso directo finaliza llamando a lineDrop en el identificador de llamada obtenido de lineMakeCall o el primer mensaje de LINE_CALLSTATE, si la llamada era una llamada entrante. El proveedor de servicios cerrará el puerto y restaurará el módem a su estado predeterminado. La aplicación debe llamar a CloseHandle en el identificador que recibió de lineGetID.
El modo de paso a través también se puede finalizar llamando a lineSetCallParams con el parámetro dwBearerMode establecido en LINEBEARERMODE_VOICE. Se supone que el tipo de medio (modo) establecido por lineSetMediaMode está en vigor. Si LINEMEDIAMODE_DATAMODEM está activo, el proveedor de servicios tomará el control de la llamada como si fuera una llamada de módem de datos ya en curso; Si se llama posteriormente a lineDrop, el proveedor de servicios emitirá los comandos del módem o los cambios de estado de interfaz adecuados para quitar una llamada de datos.
Nota
Si el modo de acceso directo finaliza mientras la llamada está en curso, el proveedor de servicios TAPI (TSP) de la línea puede restaurar la configuración del módem a su estado predeterminado. Unimodem es un ejemplo de un TSP que siempre restaura la configuración del módem al finalizar el modo de acceso directo. Por este motivo, el modo de acceso directo no se puede usar como método para configurar el dispositivo. El modo de paso a través solo debe usarse para actividades distintas que se pueden considerar completas cuando finaliza el paso a través. Algunos ejemplos de actividades que pueden usar el modo de acceso directo incluyen enviar un fax o reproducir datos de onda o audio a través de un protocolo de módem propietario.