Bagikan melalui


MagneticStripeReaderErrorOccured

Peristiwa ini terjadi ketika ada kesalahan magnetic stripe reader (MSR), seperti kesalahan pemindaian.

Sintaks

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;

Tabel berikut ini memperlihatkan tata letak memori buffer data untuk peristiwa ini.

Nilai memori Deskripsi
0x00000009 EventType = PosEventType:: MagneticStripeReaderErrorOccurred
UINT32 DataLength = sizeof(PosEventDataHeader) + sizeof(MSR_ERROR_EVENT)
MsrTrackErrorType 32-bit Track1Status
MsrTrackErrorType 32-bit Track2Status
MsrTrackErrorType 32-bit Track3Status
MsrTrackErrorType 32-bit Track4Status
UnifiedPosErrorSeverity 32-bit Keparahan
UnifiedPosErrorReason 32-bit Alasan
UINT32 Alasan Diperpanjang
MsrCardType 32-bit CardType
char yang tidak bertanda Track1EncryptedDataLength
char yang tidak bertanda Track2EncryptedDataLength
char yang tidak bertanda Track3EncryptedDataLength
char yang tidak bertanda Track4EncryptedDataLength
karakter tidak ditandatangani [MSR_TRACK_SIZE] Byte Track1EncryptedDataLength dari data track 1 terenkripsi
karakter tidak ditandatangani [MSR_TRACK_SIZE] Byte Track2EncryptedDataLength dari data track 2 terenkripsi
karakter tidak ditandatangani [MSR_TRACK_SIZE] Byte Track3EncryptedDataLength dari data trek terenkripsi 3
karakter tidak ditandatangani [MSR_TRACK_SIZE] Byte Track4EncryptedDataLength dari data track 4 terenkripsi
char yang tidak bertanda Track1MaskedDataLength
char yang tidak bertanda Track2MaskedDataLength
char yang tidak bertanda Track3MaskedDataLength
char yang tidak bertanda Track4MaskedDataLength
karakter tidak ditandatangani [MSR_TRACK_SIZE] Track1MaskedDataLength byte dari data trek bertopeng 1
karakter tidak ditandatangani [MSR_TRACK_SIZE] Byte Track2MaskedDataLength dari data trek bertopeng 2
karakter tidak ditandatangani [MSR_TRACK_SIZE] Byte Track3MaskedDataLength dari data trek bertopeng 3
karakter tidak ditandatangani [MSR_TRACK_SIZE] Byte Track4MaskedDataLength dari data trek bertopeng 4
char yang tidak bertanda Track1DiscretionaryDataLength
char yang tidak bertanda Track2DiscretionaryDataLength
karakter tidak ditandatangani [MSR_TRACK_SIZE] Track1DiscretionaryDataLength byte dari data trek diskresi 1
karakter tidak ditandatangani [MSR_TRACK_SIZE] Track2DiscretionaryDataLength byte dari data trek diskresi 2
char yang tidak bertanda CardAuthenicationDataLength - panjang data setelah enkripsi, termasuk padding
char yang tidak bertanda CardAuthenticationDataAbsoluteLength - panjang data sebelum enkripsi (mungkin diperlukan untuk strip padding selama dekripsi)
karakter tidak ditandatangani[MSR_ADDITIONAL_SECURITY_INFORMATION_DATA_SIZE] CardAuthenticationDataAbsoluteLength byte data autentikasi kartu
char yang tidak bertanda AdditionalSecurityInformationLength
karakter tidak ditandatangani[MSR_ADDITIONAL_SECURITY_INFORMATION_SIZE] AdditionalSecurityInformationLength byte informasi keamanan tambahan
wchar_T [MSR_ERROR_MAX_MESSAGE_LENGTH] Hingga MSR_ERROR_MAX_MESSAGE_LENGTH wchar_t kesalahan Teks pesan null-dihentikan

Keterangan

Jika terjadi kesalahan pemindaian, dan beberapa data pemindaian diperoleh, data peristiwa berisi data pemindaian parsial.

Persyaratan

Header: pointofservicedriverinterface.h