Freigeben über


MagneticStripeReaderErrorOccured

Dieses Ereignis tritt auf, wenn ein MsR-Fehler (Magnetic Stripe Reader) vorliegt, z. B. ein Überprüfungsfehler.

Syntax

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;

Die folgende Tabelle zeigt das Speicherlayout des Datenpuffers für dieses Ereignis.

Arbeitsspeicherwert BESCHREIBUNG
0x00000009 EventType = PosEventType:: MagneticStripeReaderErrorOccurred
UINT32 DataLength = sizeof(PosEventDataHeader) + sizeof(MSR_ERROR_EVENT)
32-Bit-MsrTrackErrorType Track1Status
32-Bit-MsrTrackErrorType Track2Status
32-Bit-MsrTrackErrorType Track3Status
32-Bit-MsrTrackErrorType Track4Status
32-Bit UnifiedPosErrorSeverity Schweregrad
32-Bit UnifiedPosErrorReason `Reason`
UINT32 Erweiterter Grund
32-Bit-MsrCardType CardType
unsigned char Track1EncryptedDataLength
unsigned char Track2EncryptedDataLength
unsigned char Track3EncryptedDataLength
unsigned char Track4EncryptedDataLength
Zeichen ohne Vorzeichen [MSR_TRACK_SIZE] Track1EncryptedDataLength Bytes der verschlüsselten Spur 1-Daten
Zeichen ohne Vorzeichen [MSR_TRACK_SIZE] Track2EncryptedDataLength Bytes der verschlüsselten Spur 2-Daten
Zeichen ohne Vorzeichen [MSR_TRACK_SIZE] Track3EncryptedDataLength Bytes von verschlüsselten Track 3-Daten
Zeichen ohne Vorzeichen [MSR_TRACK_SIZE] Track4EncryptedDataLength Bytes von verschlüsselten Track 4-Daten
unsigned char Track1MaskedDataLength
unsigned char Track2MaskedDataLength
unsigned char Track3MaskedDataLength
unsigned char Track4MaskedDataLength
Zeichen ohne Vorzeichen [MSR_TRACK_SIZE] Track1MaskedDataLength Bytes der maskierten Spur 1-Daten
Zeichen ohne Vorzeichen [MSR_TRACK_SIZE] Track2MaskedDataLength Bytes der maskierten Spur 2-Daten
Zeichen ohne Vorzeichen [MSR_TRACK_SIZE] Track3MaskedDataLength Bytes der maskierten Spur 3-Daten
Zeichen ohne Vorzeichen [MSR_TRACK_SIZE] Track4MaskedDataLength Bytes der maskierten Spur 4-Daten
unsigned char Track1DiscretionaryDataLength
unsigned char Track2DiscretionaryDataLength
Zeichen ohne Vorzeichen [MSR_TRACK_SIZE] Track1DiscretionaryDataLength bytes of discretionary track 1 data
Zeichen ohne Vorzeichen [MSR_TRACK_SIZE] Track2DiscretionaryDataLength Bytes der diskretionären Spur 2-Daten
unsigned char CardAuthenicationDataLength : Länge der Daten nach der Verschlüsselung, einschließlich Auffüllung
unsigned char CardAuthenticationDataAbsoluteLength – Datenlänge vor der Verschlüsselung (kann erforderlich sein, um den Abstand während der Entschlüsselung zu entfernen)
zeichen ohne Vorzeichen[MSR_ADDITIONAL_SECURITY_INFORMATION_DATA_SIZE] CardAuthenticationDataAbsoluteLength bytes of Karte authentication data
unsigned char AdditionalSecurityInformationLength
zeichen ohne Vorzeichen[MSR_ADDITIONAL_SECURITY_INFORMATION_SIZE] AdditionalSecurityInformationLength Bytes zusätzlicher Sicherheitsinformationen
wchar_T [MSR_ERROR_MAX_MESSAGE_LENGTH] Bis zu MSR_ERROR_MAX_MESSAGE_LENGTH wchar_t des Fehlers Null beendeter Nachrichtentext

Bemerkungen

Wenn ein Überprüfungsfehler auftritt und einige Scandaten abgerufen wurden, enthalten die Ereignisdaten die teilweisen Scandaten.

Anforderungen

Header: pointofservicedriverinterface.h