Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieses Ereignis wird nach einem erfolgreichen MsR-Scanereignis (Magnetstreifenleser) ausgelöst.
Syntax
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;
Die folgende Tabelle zeigt das Speicherlayout des Datenpuffers für dieses Ereignis.
| Memory value | Description |
|---|---|
| 0x00000008 | EventType = PosEventType:: MagneticStripeReaderDataReceived |
| UINT32 | DataLength = sizeof(PosEventDataHeader) + sizeof(MSR_DATA_RECEIVED) |
| 32-bit MsrCardType | MsrCardType |
| unsigned char | Track1EncryptedDataLength - Will always be zero (0) if MsrDataEncryption is MsrDataEncryption_None. |
| unsigned char | Track2EncryptedDataLength - Will always be zero (0) if MsrDataEncryption is MsrDataEncryption_None. |
| unsigned char | Track3EncryptedDataLength - Will always be zero (0) if MsrDataEncryption is MsrDataEncryption_None. |
| unsigned char | Track4EncryptedDataLength - Will always be zero (0) if MsrDataEncryption is MsrDataEncryption_None. |
| nicht signiertes Zeichen [MSR_TRACK_SIZE] | Track1EncryptedDataLength bytes of encrypted track 1 data |
| nicht signiertes Zeichen [MSR_TRACK_SIZE] | Track2EncryptedDataLength bytes of encrypted track 2 data |
| nicht signiertes Zeichen [MSR_TRACK_SIZE] | Track3EncryptedDataLength bytes of encrypted track 3 data |
| nicht signiertes Zeichen [MSR_TRACK_SIZE] | Track4EncryptedDataLength bytes of encrypted track 4 data |
| unsigned char | Track1MaskedDataLength |
| unsigned char | Track2MaskedDataLength |
| unsigned char | Track3MaskedDataLength |
| unsigned char | Track4MaskedDataLength |
| nicht signiertes Zeichen [MSR_TRACK_SIZE] | Track1MaskedDataLength bytes of masked track 1 data |
| nicht signiertes Zeichen [MSR_TRACK_SIZE] | Track2MaskedDataLength bytes of masked track 2 data |
| nicht signiertes Zeichen [MSR_TRACK_SIZE] | Track3MaskedDataLength bytes of masked track 3 data |
| nicht signiertes Zeichen [MSR_TRACK_SIZE] | Track4MaskedDataLength bytes of masked track 4 data |
| unsigned char | Track1DiscretionaryDataLength – Will always be zero (0) if MagneticStripeReaderIsDecodeDataEnabled is false. |
| unsigned char | Track2DiscretionaryDataLength– Will always be zero (0) if MagneticStripeReaderIsDecodeDataEnabled is false. |
| nicht signiertes Zeichen [MSR_TRACK_SIZE] | Track1DiscretionaryDataLength bytes of discretionary track 1 data |
| nicht signiertes Zeichen [MSR_TRACK_SIZE] | Track2DiscretionaryDataLength bytes of discretionary track 2 data |
| unsigned char | CardAuthenicationDataLength - length of the encrypted data in bytes, including padding |
| unsigned char | CardAuthenticationDataAbsoluteLength - length of the unencrypted data in bytes (you may need to strip padding during decryption) |
| unsigned char[MSR_ADDITIONAL_SECURITY_INFORMATION_DATA_SIZE] | CardAuthenticationDataAbsoluteLength bytes of card authentication data |
| unsigned char | AdditionalSecurityInformationLength |
| unsigned char[MSR_ADDITIONAL_SECURITY_INFORMATION_SIZE] | AdditionalSecurityInformationLength bytes of additional security information |
Requirements
Header: pointofservicedriverinterface.h