二代证Dll使用说明
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二代证系统终端API 使用说明最新11/6/28
上海普天邮通商用机器有限公司
2011年6月
二代证系统终端API
使用说明
版本
2.1
出版日期
2011年6月
著作权注意事项
本书版权为上海普天邮通商用机器有限公司所有。未经上海普天邮通商用机器有限公司书面同意,任何公司、单位或个人,不得用任何手段复制本手册的部分或全部内容。
对印刷错误的更正,所述信息谬误的勘误,以及产品的改进,均由上海普天邮通商用机器有限公司随时作出解释,恕不预先通知,修正内容将编入再版说明书中。
一、前言
本应用程序接口(API)用于二代证验证系统的验证终端应用系统的开发。
二、系统要求
使用本API的PC机,必须满足下列条件:
●Windows 2000, Windows XP或更高
●至少64兆内存(64M RAM or Larger)
●至少10兆空闲硬盘空间(10M Free Hard Disk Space or Larger)
●至少一个空闲普通串口或USB口(视用户需求而定)。
三、文件列表
四个文件放在一起。
四、API详细说明
2.证件信息结构
typedef struct _personinfow
{
wchar_t name[16];
wchar_t sex[2];
wchar_t nation[10];
wchar_t birthday[10];
wchar_t address[36];
wchar_t cardId[20];
wchar_t police[16];
wchar_t validStart[10];
wchar_t validEnd[10];
wchar_t sexCode[2];
wchar_t nationCode[4];
wchar_t appendMsg[36];
}PERSONINFOW,*PPERSONINFOW;
typedef struct _personinfoa
{
char name[32];
char sex[4];
char nation[20];
char birthday[12];
char address[72];
char cardId[20];
char police[32];
char validStart[12];
char validEnd[12];
char sexCode[4];
char nationCode[4];
char appendMsg[72];
}PERSONINFOA,*PPERSONINFOA;
PERSONINFOW中的字符串使用UTF-16编码,PERSONINFOA中的字符串使用GBK编码。
20080808。有效截止日期可以是长期。
3.long__stdcall OpenCardReader(long lPort, ULONG ulFlag, ULONG ulBaudRate)
打开并检测阅读器。
参数
lPort:端口号,1~16表示串口号,1001表示USB口,0表示自动选择。
厂时的波特率一般为115200。使用USB阅读器时忽略该参数。
返回值:错误代码。
4.long__stdcall GetPersonMsgW(PPERSONINFOW pInfo, const wchar_t* pszImageFile)
读取二代证,所有参数中的字符串使用UTF-16编码。
参数
pInfo:指向证件信息结构的指针。
pszImageFile:照片路径和文件名。照片的格式是bmp。
例如C:\Documents and Settings\test\Local Settings\Temp\image.bmp(如果当前用户是test的话)
返回值:错误代码。
5.long__stdcall GetPersonMsgA(PPERSONINFOA pInfo, const char* pszImageFile)
读取二代证,所有参数中的字符串使用GBK编码。
参数
pInfo:指向证件信息结构的指针。
pszImageFile:照片路径和文件名。照片的格式是bmp。
例如C:\Documents and Settings\test\Local Settings\Temp\image.bmp(如果当前用户是test的话)
返回值:错误代码。
6.long__stdcall ResetCardReader()
重置阅读器。重置成功后自动等待2秒钟。一般情况下不使用该函数。
返回值:错误代码。
7.long__stdcall CloseCardReader()
关闭阅读器。
返回值:错误代码。
8.long__stdcall GetCardReaderStatus(long lPort, ULONG ulBaudRate)
获取阅读器的状态。应用程序调用此函数时不需要另外调用OpenCardReader和CloseCardReader函数。
参数
lPort:端口号,1~16表示串口号,1001表示USB口,0表示自动选择。
ulBaudRate:波特率。使用串口阅读器时请正确设置波特率。串口阅读器出厂时的波特率一般为115200。使用USB阅读器时忽略该参数。
返回值:错误代码。
9.void__stdcall GetErrorTextW(wchar_t* pszBuffer, DWORD dwBufLen)
获取错误信息的文字描述。
参数
pszBuffer:保存错误信息的缓冲区,编码为UTF-16。
dwBufLen:缓冲区的字符数。
返回值:无。
10.void__stdcall GetErrorTextA(char* pszBuffer, DWORD dwBufLen)
获取错误信息的文字描述。
参数
pszBuffer:保存错误信息的缓冲区,编码为GBK。
dwBufLen:缓冲区的字符数。
返回值:无。