动态库函数说明
1.1 初始化
1.1.1 说明
用以初始化,在每次使用控件之前,必须先调用一次该方法。
1.1.2 函数名
long WINAPI Init(const char *pUrl,const char *pUser);
1.1.3 返回值
0表示成功;非0表示失败。
1.1.4 参数说明
输入参数pUrl
医保提供的API初始化动态库地址。
输入参数pUser
使用地区(传错会使下载的资源与所使用的设备不匹配,导致无法使用)。
1.1.5 注意事项
德生厂家的卡机特殊,由于硬件没有供应商ID及产品编号,所以无法自动识别到。需要通过配置文件去指定,配置文件setting.ini放到SSCardDriver目录下。
1.2 读社保卡基本信息
1.2.1 说明
驱动卡机读卡,返回卡内的基本信息。
1.2.2 函数名
long WINAPI ReadCardBas(char *pOutBuff,int nOutBuffLen,char *pSignBuff,int nSignBuffLen);
1.2.3 返回值
0表示成功;非0表示失败。
1.2.4 参数说明
输出参数pOutBuff
当函数执行成功时,该输出参数为读出的社保卡基本信息各数据项,依次为:发卡地区行政区划代码(卡识别码前6位)、社会保障号码、卡号、卡识别码、姓名、卡复位信息(仅取历史字节)、规范版本、发卡日期、卡有效期、终端机编号、终端设备号。各数据项之间以“|”分割,且最后一个数据项以“|”结尾。例如:639900|111111198101011110|X00000019|639900D15600000500BF7C7A48FB4966|张三|00814E43238697159900BF7C7A|1.00|20101001|20201001|410100813475|终端设备号|
当函数执行失败时,该输出参数为错误描述,例如:卡片上电失败。
注:当没有终端设备号时,终端设备号返回空字符串。
输入参数nOutBuffLen
对应pOutBuff内存分配长度,建议1024。
输出参数pSignBuff
当函数执行成功时,该输出参数为持卡就诊登记许可号(控件签名)。
输入参数nSignBuffLen
对应pSignBuff内存分配长度,建议1024。
1.3 读社保卡基本信息和处方信息(新增)
1.3.1 说明
驱动卡机读卡,返回卡内的基本信息和处方号。
1.3.2 函数名
long WINAPI RegisterCardRx(char *pOutBuff,int nOutBuffLen,char *pSignBuff,int nSignBuffLen,const char *pRegerUser);
1.3.3 返回值
0表示成功;非0表示失败。
1.3.4 参数说明
输出参数pOutBuff
当函数执行成功时,该输出参数为读出的社保卡基本信息各数据项,依次为:发卡地区行政区划代码(卡识别码前6位)、社会保障号码、卡号、卡识别码、姓名、卡复位信息(仅取历史字节)、规范版本、发卡日期、卡有效期、终端机编号、终端设备号,处方登记流水号,处方过期时间。各数据项之间以“|”分割,且最后一个数据项以“|”结尾。例如:639900|111111198101011110|X00000019|639900D15600000500BF7C7A48FB4966|张三|00814E43238697159900BF7C7A|1.00|20101001|20201001|410100813475|终端设备号|处方登记流水号|处方过期时间|
当函数执行失败时,该输出参数为错误描述,例如:卡片上电失败。
注:当没有终端设备号时,终端设备号返回空字符串。
输入参数nOutBuffLen
对应pOutBuff内存分配长度,建议1024。
输出参数pSignBuff
当函数执行成功时,该输出参数为持卡就诊登记许可号(控件签名)。
输入参数nSignBuffLen
对应pSignBuff内存分配长度,建议1024。
输入参数pRegerUser
定点机构登记人姓名|定点机构登记人证件类型|定点机构登记人证件号码|医疗机构编码|代办人姓名|代办人身份证类型|代办人身份证号码|
注:代办人信息非必传,可以只传前面四个必传字段
1.4 检验PIN码
1.4.1 说明
校验社保卡PIN码,在输入6次错误密码以后,社保卡自动锁定。
1.4.2 函数名
long WINAPI VerifyPIN(char *pOutBuff,int nOutBuffLen);
1.4.3 返回值
0表示成功;非0表示失败。
1.4.4 参数说明
输出参数pOutBuff
当函数执行成功时,此参数为空。
当函数执行失败时,该输出参数为错误信息描述。
输入参数nOutBuffLen
由调用者分配内存,并提供分配的长度,建议1024。
1.5 修改PIN码
1.5.1 说明
修改社保卡PIN码,需要原密码验证通过后,并保证新密码和确认新密码输入一致才能修改成功。
1.5.2 函数名
long WINAPI ChangePIN(char *pOutBuff,int nOutBuffLen);
1.5.3 返回值
0表示成功;非0表示失败。
1.5.4 参数说明
输出参数pOutBuff
当函数执行成功时,此参数为空。
当函数执行失败时,该输出参数为错误信息描述。
输入参数nOutBuffLen
由调用者分配内存,并提供分配的长度,建议1024。
1.6 读身份证信息
1.6.1 说明
驱动卡机读取二代身份证,返回身份证信息。
1.6.2 函数名
long WINAPI ReadSFZ(char *pOutBuff,int nOutBuffLen,char *pSignBuff,int nSignBuffLen);
1.6.3 返回值
0表示成功;非0表示失败。
1.6.4 参数说明
输出参数pOutBuff
当函数执行成功时,该输出参数为读出的身份证信息,由公民身份号码、姓名、性别、民族、出生日期、户籍地址、签发机构、有效期、照片(BASE64编码)组成。数据项之间以“^”分隔,最后一个数据项以“^”结尾。
当函数执行失败时,该输出参数为错误信息描述。
输入参数nOutBuffLen
对应pOutBuff内存分配长度,建议4096。
输出参数pSignBuff
当函数执行成功时,该输出参数为数字签名。
输入参数nSignBuffLen
对应pSignBuff内存分配长度,建议4096。