Función FaxDevReportStatus (faxdev.h)

El servicio de fax llama a la función FaxDevReportStatus para consultar un proveedor de servicios de fax (FSP) para obtener información de estado sobre una operación de fax activa individual o para obtener información de estado después de una operación de fax con error. Cada FSP debe exportar la función FaxDevReportStatus .

Sintaxis

BOOL FaxDevReportStatus(
  [in]  HANDLE          FaxHandle,
  [out] PFAX_DEV_STATUS FaxStatus,
  [in]  DWORD           FaxStatusSize,
  [out] LPDWORD         FaxStatusSizeRequired
);

Parámetros

[in] FaxHandle

Tipo: HANDLE

Especifica un identificador de fax devuelto por la función FaxDevStartJob asociada al trabajo de fax.

[out] FaxStatus

Tipo: PFAX_DEV_STATUS

Puntero a una estructura de FAX_DEV_STATUS que recibe información de estado e identificación. Este parámetro también puede ser un puntero NULL . Para obtener más información, vea la sección Comentarios que se muestra más adelante.

[in] FaxStatusSize

Tipo: DWORD

Especifica el tamaño, en bytes, del búfer al que apunta el parámetro FaxStatus .

[out] FaxStatusSizeRequired

Tipo: LPDWORD

Puntero a una variable que recibe el tamaño calculado, en bytes, del búfer necesario para contener una estructura FAX_DEV_STATUS . Para obtener más información, vea la sección Comentarios que se muestra más adelante.

Valor devuelto

Tipo: BOOL

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, el servicio de fax llama a GetLastError.

Nota Para un envío correcto, FaxDevSend() debe devolver TRUE y FaxDevReportStatus() debe devolver FS_COMPLETED. Para un envío incorrecto, FaxDevSend() debe devolver FALSE y FaxDevReportStatus() debe devolver cualquiera de los siguientes códigos: FS_LINE_UNAVAILABLE, FS_NO_ANSWER, FS_NO_DIAL_TONE, FS_DISCONNECTED, FS_BUSY, FS_NOT_FAX_CALL o FS_FATAL_ERROR. Si después de un fax con errores, el fax no se debe volver a enviar, FaxDevReportStatus() debe devolver cualquier código que no sea el indicado aquí.
 

Comentarios

Para obtener información de estado para la operación, la función FaxDevReportStatus se llama asincrónicamente en un subproceso de ejecución que es independiente de la operación de fax. Normalmente es necesario sincronizar el acceso mediante varios subprocesos. Para obtener más información, vea Sincronizar la ejecución de varios subprocesos.

Si el parámetro FaxStatusSize es igual a cero y FaxStatus es un puntero NULL , el FSP debe calcular el tamaño, en bytes, del búfer necesario para contener una estructura de FAX_DEV_STATUS . El FSP debe devolver este valor en el parámetro FaxStatusSizeRequired . A continuación, el servicio de fax asignará la memoria necesaria. También devolverá el tamaño de memoria en el parámetro FaxStatusSize y un puntero a esa memoria en el parámetro FaxStatus .

El FSP debe establecer todos los miembros de la estructura de FAX_DEV_STATUS con información de estado para la operación de fax activa. El servicio de fax asigna la memoria de las cadenas a las que apuntan los miembros CSI, CallerId y RoutingInfo . El tamaño de la memoria que asigna el servicio es igual a sizeof(FAX_DEV_STATUS) + FAXDEVREPORTSTATUS_SIZE. El FSP debe colocar las cadenas en el bloque de memoria que sigue inmediatamente a la estructura FAX_DEV_STATUS . Los miembros CSI, CallerId y RoutingInfo deben apuntar a la ubicación de las cadenas del bloque de memoria.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional, Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado faxdev.h

Consulte también

FAX_DEV_STATUS

Funciones del proveedor de servicios de fax

FaxDevStartJob

Uso de la API del proveedor de servicios de fax