MagneticStripeReaderDataReceived
Cet événement est déclenché après un événement d’analyse MSR (Magnetic Stripe Reader) réussi.
Syntaxe
typedef struct _MSR_DATA_RECEIVED {
MsrCardType CardType;
unsigned char Track1EncryptedDataLength;
unsigned char Track2EncryptedDataLength;
unsigned char Track3EncryptedDataLength;
unsigned char Track4EncryptedDataLength;
unsigned char Track1EncryptedData[MSR_TRACK_SIZE];
unsigned char Track2EncryptedData[MSR_TRACK_SIZE];
unsigned char Track3EncryptedData[MSR_TRACK_SIZE];
unsigned char Track4EncryptedData[MSR_TRACK_SIZE];
unsigned char Track1MaskedDataLength;
unsigned char Track2MaskedDataLength;
unsigned char Track3MaskedDataLength;
unsigned char Track4MaskedDataLength;
unsigned char Track1MaskedData[MSR_TRACK_SIZE];
unsigned char Track2MaskedData[MSR_TRACK_SIZE];
unsigned char Track3MaskedData[MSR_TRACK_SIZE];
unsigned char Track4MaskedData[MSR_TRACK_SIZE];
unsigned char Track1DiscretionaryDataLength;
unsigned char Track2DiscretionaryDataLength;
unsigned char Track1DiscretionaryData[MSR_TRACK_SIZE];
unsigned char Track2DiscretionaryData[MSR_TRACK_SIZE];
unsigned char CardAuthenicationDataLength; // Length of data after encryption, may include padding.
unsigned char CardAuthenticationDataAbsoluteLength; // Length of data before encryption, may be needed to strip padding on decryption.
unsigned char CardAuthenicationData[MSR_CARD_AUTHENTICATION_DATA_SIZE];
unsigned char AdditionalSecurityInformationLength;
unsigned char AdditionalSecurityInformation[MSR_ADDITIONAL_SECURITY_INFORMATION_SIZE];
} MSR_DATA_RECEIVED, *PMSR_DATA_RECEIVED;
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 |
---|---|
0x00000008 | EventType = PosEventType:: MagneticStripeReaderDataReceived |
UINT32 | DataLength = sizeof(PosEventDataHeader) + sizeof(MSR_DATA_RECEIVED) |
MsrCardType 32 bits | MsrCardType |
unsigned char | Track1EncryptedDataLength : est toujours égal à zéro (0) si MsrDataEncryption est MsrDataEncryption_None. |
unsigned char | Track2EncryptedDataLength : est toujours égal à zéro (0) si MsrDataEncryption est MsrDataEncryption_None. |
unsigned char | Track3EncryptedDataLength : est toujours égal à zéro (0) si MsrDataEncryption est MsrDataEncryption_None. |
unsigned char | Track4EncryptedDataLength : est toujours égal à zéro (0) si MsrDataEncryption est MsrDataEncryption_None. |
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 : est toujours égal à zéro (0) si MagneticStripeReaderIsDecodeDataEnabled a la valeur false. |
unsigned char | Track2DiscretionaryDataLength : est toujours égal à zéro (0) si MagneticStripeReaderIsDecodeDataEnabled a la valeur false. |
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 chiffrées en octets, y compris le remplissage |
unsigned char | CardAuthenticationDataAbsoluteLength : longueur des données non chiffrées en octets (vous devrez peut-être 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 |
Spécifications
En-tête : pointofservicedriverinterface.h