📄 import.h
字号:
// for export.cpp
#ifndef CARDREADERDLL
#define CARDREADERDLL extern "C" __declspec(dllimport)
#endif
// 卡类型代码
#define CRTYPE_MAGNETIC 1
#define CRTYPE_IC 2
#define CRTYPE_MEMORY 4
#define CRTYPE_OTHER 8
#define CRTRACK1 //60
#define CRTRACK2 0
#define CRTRACK3 1
#define CRBUFFER_MAX 65536
//#define CRERROR_SWALLOW 0xE0020003
//#define CRERROR_DEVICE_BUSY 0xE0020011
// 错误状态
#define CRERROR_MECHANICAL 0xE0020001//机械故障
#define CRERROR_CARDINPUT 0xE0020002//吞不进(指进卡的吞,还是后出卡的吞???)
#define CRERROR_CARDOUTPUT 0xE0020003//吐不出
#define CRERROR_INVALIDCARD 0xE0020004//无效卡
#define CRERROR_READCARD 0xE0020005// 读卡错
#define CRERROR_WRITECARD 0xE0020006//写卡错
#define CRERROR_MEMORYLACK 0xE0020007//存储空间不足
#define CRERROR_WRONGINDEX 0xE0020008//错误的信息条目索引值
#define CRERROR_OVERAREA 0xE0020009//指定的存储位置不存在
#define CRERROR_CREADTHREAD 0xE0020019// 创建线程错
#define CRERROR_CONNECTDEVICE 0xE0020011// 设备联接错
#define CRERROR_INIT 0xE0020012// 初始化错
#define CRERROR_ENTRY_CARRY 0xE0020013// 进出卡错
#define CRERROR_ENTRY_CARRY_NEGATIVEREPLY 0xE0020014// 进出否定响应
#define CRERROR_READMAG 0xE0020015//读磁错
#define CRERROR_READMAG_NEGATIVEREPLY 0xE0020016//读磁否定响应
#define CRERROR_STATUS 0xE0020017//获取状态错
#define CRERROR_STATUS_NEGATIVEREPLY 0xE0020018//获取状态否定响应
/*-------------------------------------------------------------------------*/
// 命令代码
#define CRC_ENTRY 1 //0x80000001
#define CRC_REMOVE 2 //0x80000002
#define CRC_SWALLOW 3 //0x80000003
#define CRC_ENABLE 4 //0x80000004
#define CRC_DISABLE 5 //0x80000005
#define CRERROR_INSIDE 0X90000002
#define CRERROR_GATE 0X90000008
#define CRERROR_EMPTY 0xE0020010//不存在
#define CRERROR_UNSUPPORT 0xE002FFFF// 不支持的功能
typedef struct tagDEVICEDESC{
ULONG cbSize;
USHORT usVendorID;
USHORT usProductID;
ULONG szDeviceID;
TCHAR szDevice[32];
TCHAR szDeviceName[32];
TCHAR szManufacturer[32];
ULONG cbExtSize;
TCHAR pExtInfo[4];
} DEVICEDESC,*PDEVICEDESC;
/*
// 成功信息
#define TAKEIN_SUCCESS // 进卡成功
#define COMM_SUCCESS 0xE0020020//初始化成功
#define CARD_INIT_SUCCESS 0x80000006// 有卡初始化成功
#define NOCARD_INIT_SUCCESS 0x80000007// 无卡初始化成功
#define CARD_INTAKE_SUCCESS 0x80000008// 进卡ok
#define CARD_REINTAKE_SUCCESS 0x80000009//重进卡OK
#define CARD_TAKEOUT_SUCCESS 0x80000010
#define CARD_SWALLOW_SUCCESS 0x80000011
#define CARD_PERMIT_IN 0x80000012
#define CARD_UNPERMIT_IN 0x80000013
#define WRITE_TRACK1_SUCCESS 0x80000014
#define WRITE_TRACK1_FAIL 0x80000015
#define WRITE_TRACK1_NOCARD_FAIL 0x80000016
#define READ_TRACK1_SUCCESS 0x80000017
#define READ_TRACK1_FAIL 0x80000018
#define READ_TRACK1_NOCARD_FAIL 0x80000019
#define READ_TRACK1_LACK_OFMEMORY 0x80000020
#define WRITE_TRACK2_SUCCESS 0x80000021
#define WRITE_TRACK2_FAIL 0x80000022
#define WRITE_TRACK2_NOCARD_FAIL 0x80000023
#define READ_TRACK2_SUCCESS 0x80000024
#define READ_TRACK2_FAIL 0x80000025
#define READ_TRACK2_NOCARD_FAIL 0x80000026
#define READ_TRACK2_LACK_OFMEMORY 0x80000027
#define WRITE_TRACK3_SUCCESS 0x80000028
#define WRITE_TRACK3_FAIL 0x80000029
#define WRITE_TRACK3_NOCARD_FAIL 0x80000030
#define READ_TRACK3_SUCCESS 0x80000031
#define READ_TRACK3_FAIL 0x80000032
#define READ_TRACK3_NOCARD_FAIL 0x80000033
#define READ_TRACK3_LACK_OFMEMORY 0x80000034
*/
// 函数声明
/*
CARDREADERDLL LRESULT WINAPI crClosePort();// no CMD for available use
*/
CARDREADERDLL LRESULT crInitialize();
CARDREADERDLL LRESULT crControl(IN USHORT uControlCode);
CARDREADERDLL LRESULT crCheckCard(IN ULONG ulCardType);
CARDREADERDLL LRESULT crRead(IN ULONG ulSegIndex , IN ULONG ulOffset,IN ULONG ulSize,OUT PUCHAR pDataBuffer,OUT int &ulReadSize);
CARDREADERDLL LRESULT crWrite(IN ULONG ulSegIndex,IN ULONG ulOffset , IN ULONG size, IN PUCHAR pDataBuffer,OUT int WriteSize);
CARDREADERDLL LRESULT crGetStatus();
CARDREADERDLL LRESULT crUnInit();
CARDREADERDLL void crSetCallBack();
CARDREADERDLL LRESULT GetDeviceDesc(OUT PDEVICEDESC pDeviceDesc);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -