共用方式為


MagneticStripeReaderErrorOccured

發生磁片帶讀取器 (MSR) 錯誤時,例如掃描錯誤時,就會發生此事件。

語法

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;

下表顯示此事件之資料緩衝區的記憶體配置。

記憶體值 描述
0x00000009 EventType = PosEventType:: MagneticStripeReaderErrorOccurred
UINT32 DataLength = sizeof (PosEventDataHeader) + sizeof (MSR_ERROR_EVENT)
32 位 MsrTrackErrorType Track1Status
32 位 MsrTrackErrorType Track2Status
32 位 MsrTrackErrorType Track3Status
32 位 MsrTrackErrorType Track4Status
32 位 UnifiedPosErrorSeverity 嚴重性
32 位 UnifiedPosErrorReason 原因
UINT32 擴充原因
32 位 MsrCardType CardType
unsigned char Track1EncryptedDataLength
unsigned char Track2EncryptedDataLength
unsigned char Track3EncryptedDataLength
unsigned char Track4EncryptedDataLength
unsigned char [MSR_TRACK_SIZE] Track1EncryptedDataLength 位元組的加密追蹤 1 資料
unsigned char [MSR_TRACK_SIZE] Track2EncryptedDataLength 位元組的加密追蹤 2 資料
unsigned char [MSR_TRACK_SIZE] Track3EncryptedDataLength 位元組的加密追蹤 3 資料
unsigned char [MSR_TRACK_SIZE] Track4EncryptedDataLength 位元組的加密追蹤 4 資料
unsigned char Track1MaskedDataLength
unsigned char Track2MaskedDataLength
unsigned char Track3MaskedDataLength
unsigned char Track4MaskedDataLength
unsigned char [MSR_TRACK_SIZE] Track1MaskedDataLength 位元組的遮罩追蹤 1 資料
unsigned char [MSR_TRACK_SIZE] Track2MaskedDataLength 位元組的遮罩追蹤 2 資料
unsigned char [MSR_TRACK_SIZE] Track3MaskedDataLength 位元組的遮罩追蹤 3 資料
unsigned char [MSR_TRACK_SIZE] Track4MaskedDataLength 位元組的遮罩追蹤 4 資料
unsigned char Track1DiscretionaryDataLength
unsigned char Track2DiscretionaryDataLength
unsigned char [MSR_TRACK_SIZE] Track1DiscretionaryDataLength 位元組的任意追蹤 1 個數據
unsigned char [MSR_TRACK_SIZE] Track2DiscretionaryDataLength 位元組的任意追蹤 2 資料
unsigned char CardAuthenicationDataLength - 加密後的資料長度,包括填補
unsigned char CardAuthenticationDataAbsoluteLength - 加密之前的資料長度 (可能需要在解密期間填補)
unsigned char[MSR_ADDITIONAL_SECURITY_INFORMATION_DATA_SIZE] CardAuthenticationDataAbsoluteLength 位元組的卡片驗證資料
unsigned char AdditionalSecurityInformationLength
unsigned char[MSR_ADDITIONAL_SECURITY_INFORMATION_SIZE] AdditionalSecurityInformationLength 位元組的其他安全性資訊
wchar_T [MSR_ERROR_MAX_MESSAGE_LENGTH] 最多 MSR_ERROR_MAX_MESSAGE_LENGTH wchar_t 錯誤 Null終止的訊息正文

備註

如果發生掃描錯誤,而且已取得某些掃描資料,事件資料會包含部分掃描資料。

規格需求

標頭: pointofservicedriverinterface.h