Compartir a través de


MagneticStripeReaderErrorOccured

Este evento se produce cuando hay un error de lector de bandas magnéticas (MSR), como un error de examen.

Sintaxis

typedef struct _MSR_ERROR_EVENT
{
    PosEventDataHeader Header;
    MsrTrackErrorType Track1Status;
    MsrTrackErrorType Track2Status;
    MsrTrackErrorType Track3Status;
    MsrTrackErrorType Track4Status;
    UnifiedPosErrorSeverity Severity;
    UnifiedPosErrorReason Reason;
    UINT32 ExtendedReason;
    MSR_DATA_RECEIVED CardData;
    wchar_t Message[MSR_ERROR_MAX_MESSAGE_LENGTH];
} MSR_ERROR_EVENT, *PMSR_ERROR_EVENT;

En la tabla siguiente se muestra el diseño de memoria del búfer de datos para este evento.

Valor de memoria Descripción
0x00000009 EventType = PosEventType:: MagneticStripeReaderErrorOccurred
UINT32 DataLength = sizeof(PosEventDataHeader) + sizeof(MSR_ERROR_EVENT)
MsrTrackErrorType de 32 bits Track1Status
MsrTrackErrorType de 32 bits Track2Status
MsrTrackErrorType de 32 bits Track3Status
MsrTrackErrorType de 32 bits Track4Status
UnifiedPosErrorSeverity de 32 bits Gravedad
UnifiedPosErrorReason de 32 bits Motivo
UINT32 Motivo extendido
MsrCardType de 32 bits CardType
unsigned char Track1EncryptedDataLength
unsigned char Track2EncryptedDataLength
unsigned char Track3EncryptedDataLength
unsigned char Track4EncryptedDataLength
unsigned char [MSR_TRACK_SIZE] Track1EncryptedDataLength bytes de datos cifrados de seguimiento 1
unsigned char [MSR_TRACK_SIZE] Track2EncryptedDataLength bytes de datos cifrados de seguimiento 2
unsigned char [MSR_TRACK_SIZE] Track3EncryptedDataLength bytes de datos cifrados de seguimiento 3
unsigned char [MSR_TRACK_SIZE] Track4EncryptedDataLength bytes de datos cifrados de seguimiento 4
unsigned char Track1MaskedDataLength
unsigned char Track2MaskedDataLength
unsigned char Track3MaskedDataLength
unsigned char Track4MaskedDataLength
unsigned char [MSR_TRACK_SIZE] Track1MaskedDataLength bytes de datos de seguimiento enmascarado 1
unsigned char [MSR_TRACK_SIZE] Track2MaskedDataLength bytes de datos de seguimiento enmascarado 2
unsigned char [MSR_TRACK_SIZE] Track3MaskedDataLength bytes de datos de seguimiento enmascarado 3
unsigned char [MSR_TRACK_SIZE] Track4MaskedDataLength bytes de datos de seguimiento enmascarado 4
unsigned char Track1DiscretionaryDataLength
unsigned char Track2DiscretionaryDataLength
unsigned char [MSR_TRACK_SIZE] Track1DiscretionaryDataLength bytes de datos de seguimiento discrecional 1
unsigned char [MSR_TRACK_SIZE] Track2DiscretionaryDataLength bytes de datos de seguimiento discrecional 2
unsigned char CardAuthenicationDataLength : longitud de los datos después del cifrado, incluido el relleno
unsigned char CardAuthenticationDataAbsoluteLength : longitud de los datos antes del cifrado (puede ser necesario quitar el relleno durante el descifrado)
unsigned char[MSR_ADDITIONAL_SECURITY_INFORMATION_DATA_SIZE] CardAuthenticationDataAbsoluteLength bytes de datos de autenticación de tarjeta
unsigned char AdditionalSecurityInformationLength
unsigned char[MSR_ADDITIONAL_SECURITY_INFORMATION_SIZE] Bytes AdditionalSecurityInformationLength de información de seguridad adicional
wchar_T [MSR_ERROR_MAX_MESSAGE_LENGTH] Hasta MSR_ERROR_MAX_MESSAGE_LENGTH wchar_t de texto de mensaje terminado en Null

Observaciones

Si se produce un error de examen y se obtienen algunos datos de examen, los datos del evento contienen los datos de examen parciales.

Requisitos

Encabezado: pointofservicedriverinterface.h