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