当前位置:文档之家› 二代证Dll使用说明模板

二代证Dll使用说明模板

二代证系统终端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:缓冲区的字符数。

返回值:无。

五、调用流程
六、调用示例说明
本API自带多种调用示例。

目前有基于以下编程语言的示例:VC、C#、、Delphi、BCB、Java、PB。

所有示例都使用“打开设备”->“读卡”->“关闭设备”的调用顺序。

使用调用示例时请将cardapi3.dll、sdtapi.dll、WltRS.dll、license.dat四个文件放在被调用的路径中。

使用C#、示例时请先根据需要修改输出文件的路径。

C#:“项目”->“(项目名称)属性”->“生成”->“输出路径”。

:“项目”->“(项目名称)属性”->“编译”->“生成文件输出路径”。

使用网页(B/S应用)、VB6开发的用户请使用ActiveX控件。

相关主题