Partager via


MagneticStripeReaderErrorOccured

Cet événement se produit en cas d’erreur MSR (Magnetic Stripe Reader), telle qu’une erreur d’analyse.

Syntaxe

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;

Le tableau suivant montre la disposition en mémoire de la mémoire tampon de données pour cet événement.

Valeur de mémoire Description
0x00000009 EventType = PosEventType:: MagneticStripeReaderErrorOccurred
UINT32 DataLength = sizeof(PosEventDataHeader) + sizeof(MSR_ERROR_EVENT)
MsrTrackErrorType 32 bits Track1Status
MsrTrackErrorType 32 bits Track2Status
MsrTrackErrorType 32 bits Track3Status
MsrTrackErrorType 32 bits Track4Status
UnifiedPosErrorSeverity 32 bits Niveau de gravité
UnifiedPosErrorReason 32 bits Motif
UINT32 Raison étendue
MsrCardType 32 bits CardType
unsigned char Track1EncryptedDataLength
unsigned char Track2EncryptedDataLength
unsigned char Track3EncryptedDataLength
unsigned char Track4EncryptedDataLength
unsigned char [MSR_TRACK_SIZE] Octets Track1EncryptedDataLength des données de la piste 1 chiffrées
unsigned char [MSR_TRACK_SIZE] Octets Track2EncryptedDataLength des données de la piste 2 chiffrées
unsigned char [MSR_TRACK_SIZE] Octets Track3EncryptedDataLength des données de la piste 3 chiffrées
unsigned char [MSR_TRACK_SIZE] Octets Track4EncryptedDataLength des données de la piste 4 chiffrées
unsigned char Track1MaskedDataLength
unsigned char Track2MaskedDataLength
unsigned char Track3MaskedDataLength
unsigned char Track4MaskedDataLength
unsigned char [MSR_TRACK_SIZE] Octets Track1MaskedDataLength des données de la piste 1 masquées
unsigned char [MSR_TRACK_SIZE] Octets Track2MaskedDataLength des données de la piste 2 masquées
unsigned char [MSR_TRACK_SIZE] Octets Track3MaskedDataLength des données de la piste 3 masquées
unsigned char [MSR_TRACK_SIZE] Octets Track4MaskedDataLength de données de piste 4 masquées
unsigned char Track1DiscretionaryDataLength
unsigned char Track2DiscretionaryDataLength
unsigned char [MSR_TRACK_SIZE] Octets Track1DiscretionaryDataLength des données discrétionnaires de la piste 1
unsigned char [MSR_TRACK_SIZE] Octets Track2DiscretionaryDataLength des données discrétionnaires de la piste 2
unsigned char CardAuthenicationDataLength : longueur des données après le chiffrement, y compris le remplissage
unsigned char CardAuthenticationDataAbsoluteLength : longueur des données avant le chiffrement (peut être nécessaire pour supprimer le remplissage pendant le déchiffrement)
unsigned char[MSR_ADDITIONAL_SECURITY_INFORMATION_DATA_SIZE] Octets CardAuthenticationDataAbsoluteLength des données d’authentification carte
unsigned char AdditionalSecurityInformationLength
unsigned char[MSR_ADDITIONAL_SECURITY_INFORMATION_SIZE] Octets SupplémentairesSecurityInformationLength d’informations de sécurité supplémentaires
wchar_T [MSR_ERROR_MAX_MESSAGE_LENGTH] Jusqu’à MSR_ERROR_MAX_MESSAGE_LENGTH wchar_t de texte de message terminé par null d’erreur

Notes

Si une erreur d’analyse se produit et que certaines données d’analyse ont été obtenues, les données d’événement contiennent les données d’analyse partielles.

Spécifications

En-tête : pointofservicedriverinterface.h