文档库 最新最全的文档下载
当前位置:文档库 › 居民身份证验证安全模块安装卸载说明(64位Windows系统)

居民身份证验证安全模块安装卸载说明(64位Windows系统)

居民身份证验证安全模块安装卸载说明(64位Windows系统)
居民身份证验证安全模块安装卸载说明(64位Windows系统)

居民身份证验证安全模块USB驱动安装卸载说明

--- 64位Windows操作系统

1.居民身份证验读安全模块USB驱动的安装

以64位的Windows 7操作系统为例,安装步骤如下:

步骤1:接入居民身份证验证安全模块

接入居民身份证验证安全模块或装有居民身份证验证安全模块的第二代身份证验证(阅读)机具,若为首次安装,则会相继在电脑右下方弹出两个消息框,如图 1-1和图 1-2所示。

图1-1

图1-2

此时在设备管理器当中出现如下情况,如图1-3所示。

图1-3

该图表明已识别到设备接入,手动添加驱动程序之后才能够使用。

Windows7中的设备管理器的查看方式:“开始”菜单→控制面板→设备管理器。

步骤2:添加驱动

确保驱动程序安装光盘当中的“64位Windows操作系统驱动\驱动文件”文件夹下包含以下文件:

●samcoins.dll

●USBDrv.sys

●USBDrvCo.inf

●sdt_s_drv_x64.cat

在设备管理器界面下,右击“未知设备”,选择“更新驱动程序软件”进行下一步,如图1-4所示。

图1-4

在“更新驱动程序软件”界面下选择“浏览计算机以查找驱动程序软件”继续完成下一步,如图1-5所示

图1-5

点击“浏览”,选择光盘中驱动程序USBDrv.sys所在的路径,如图1-6所示,单击“下

一步”继续安装。

图1-6

正在安装和安装结束,如图1-7和图1-8所示,阅读机具安装成功。

图1-7

图1-8

安装完之后的设备管理器中的阅读机具标识如图1-9所示

图1-9

到此,安装结束。

2.居民身份证验读安全模块USB驱动的卸载

在设备管理器界面下,此时机具已能正常使用,如图5所示,右击“SDT USB设备”选择“卸载”,弹出设备卸载对话框,如图2-1所示,勾选“删除此设备的驱动程序软件”,继续卸载驱动。

图2-1

如图2-2,驱动卸载之后,重新启动计算机。

图2-2

重新启动计算机之后,在设备管理器中的显示应如图2-3所示。

图2-3

特别注意,一部分PC机存在以下问题。

在安装过驱动程序之后,曾在多个USB端口使用过机具。当使用完毕,在其中一个USB 端口卸载驱动并重启之后,在其他的USB端口接入机具。此时设备管理器列表中会如图2-4所示。

图2-4

针对这种情况,应对凡是使用过机具的USB端口都应一一卸载驱动程序,以确保驱动程序被完全卸载。除在第一个卸载USB端口时要勾选“删除此设备的驱动程序软件”项,在其余端口不用勾选此项,如图2-5所示。

图2-5

身份证号码校验实例

身份证号码校验实例 身份证号码是按照一定规律编制的,是个人身份的有效证明,每个人只有一个号码,且不会重复,因而被各单位各部门广泛应用在相关名册中。在大量的身份证号码录入过程中,由于抄写或录入等原因,可能会弄错了某位数字,如果录错了任何一位数字,计算出来的校验码就不一样。根据这一特点,本函数可以对已录入的大批量身份证号码进行校验,如果校验未通过,则说明你录入的号码中必定是某位数字错了,应及时更正,以保证身份证号码正确有效,如果录入的是第一代15位身份证号码,本函数将返回18位号码,使身份证号码保持统一的位数。 代码如下: Function IDcheck(ID) '身份证号码校验函数 Dim s, iAs Integer Dim e, z As String Part1: '----------------------------身份证号码合法性检查--------------------------------------- If Not (Len(ID) = 18 Or Len(ID) = 15) Then '位数检验 IDcheck = "位数错误" Exit Function Else If Len(ID) = 15 Then ID = Left(ID, 6) & "19" & Right(ID, 9)

If IsNumeric(Left(ID, 17)) = False Or InStr(ID, ".") > 0 Then '字符检验 IDcheck = "字符错误" Exit Function End If On Error Resume Next '日期检验 If DateValue(Mid(ID, 7, 4) & "-" & Mid(ID, 11, 2) & "-" & Mid(ID, 13, 2)) < 1 Or _ DateValue(Mid(ID, 7, 4) & "-" & Mid(ID, 11, 2) & "-" & Mid(ID, 13, 2)) > Date Then IDcheck = "日期错误" Exit Function End If End If Part2: '-----------------------------校验码的生成及检查---------------------------------------- s = 0 For i = 1 To 17 s = s + Val(Mid(ID, 18 - i, 1)) * (2 ^ i Mod 11)

Excel判断身份证号校验码

Excel判断身份证号校验码 假设在一个工作表中:A列是姓名,B列是身份证号码,C列是备注。在B列中输入18位身份证号码后,在C2单元格中输入计算数组公式: =RIGHT(B2,1)=MID("10X98765432",MOD(SUM(MID(B2,ROW(INDIRECT("1:17")),1)*2^(18-ROW(INDIRECT("1:17")))),11)+1,1) 然后再将该公式复制给C列其他单元格。 公式的计算结果是一个逻辑值,True表示校验正确,即计算出来的校验码与输入的相同,而False则表示校验错误。值得注意的是,使用校验码进行校验判断为正确的身份证号码未必是正确的,但判断为错误的则肯定是错误的,即通过校验的只是身份证号码正确的必要条件而非充分条件。当然,在实际输入中,身份证号码输入错误而校验正确的情况很少见。在大多数情况下,使用校验码进行校验可以大大提高身份证号码输入的正确性。 RIGHT 根据所指定的字符数返回文本字符串中最后一个或多个字符。 MID 返回文本字符串中从指定位置开始的特定数目的字符,该数目由用户指定。 MOD 返回两数相除的余数。SUM 返回某一单元格区域中所有数字之和。ROW 返回引用的行号。INDIRECT 返回由文本字符串指定的引用。 或者输入数组公式: =IF(LEN(B2)<>18,"错误 ",IF(MID("10X98765432",MOD(SUM(MID(B2,ROW(INDIRECT("1:17")),1)*2^(18-ROW(INDIRECT("1:17")))),11)+1,1)=MID(B2,18,1), "正确","错误"))

检验身份证号码的正确性

检验身份证号码的正确性 =IF(LEN(A2)=18,MID("10X98765432",MOD(SUMPRODUCT(MID(A2,ROW(INDIRECT("1:1 7")),1)*2^(18-ROW(INDIRECT("1:17")))),11)+1,1)=RIGHT(A2),IF(LEN(A2)=15,ISNUMBER(--TEXT(19&MID(A2,7,6),"#-00-00")))) EXCEL中如何提取身份证出生日期、性别、检验身份证号码的正确性 中国居民身份证号码是一组特征组合码,原为15位,现升级为18位,其编码规则为:15位:6位数字常住户口所在县市的行政区划代码,6位数字出生日期代码,3位数字顺序码。 18位:6位数字常住户口所在县市的行政区划代码,8位数字出生日期代码,3位数字顺序码和1位检验码。 其中3位数字顺序码,是为同一地址码的同年同月同日出生人员编制的顺序号,偶数的为女性,奇数的为男性。 1、提取籍贯地区的行政区划代码(A2为身份证号,下同) 15与18位通用:=LEFT(A2,6) 如果有一个编码和省份地区的对照表,可以用VLOOKUP函数来提取地区信息。 2、提取出生日期信息 15位:=--TEXT(19&MID(A2,7,6),"#-00-00") 18位:=--TEXT(MID(A2,7,8),"#-00-00") 15与18位通用: =--TEXT(IF(LEN(A2)=15,19,"")&MID(A2,7,6+IF(LEN(A2)=18,2,0)),"#-00-00") 简化公式: =--TEXT((LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),"#-00-00") (请将输入公式的单元格格式设置为日期格式) 3、提取性别信息 15位:=IF(MOD(RIGHT(A2),2)=1,"男","女") 18位:=IF(MOD(MID(A2),17,1)=1,"男","女") 15与18位通用:=IF(MOD(MID(A2,IF(LEN(A2)=15,15,17),1),2)=1,"男","女") 简化公式:=IF(MOD(RIGHT(LEFT(A2,17)),2),"男","女") 4、检验身份证号码的正确性 18位身份证号码的最后一位是检验码,它是根据身份证前17位数字依照规则计算出来的,其值0~9或X。一般情况只要有一位数字输入错误,依照规则计算后就会与第18位数不符。当然不排除按错误号码计算后恰好与检验码相符的情况,但这种情况出现的可能性较低。因此,对18位号码的验证采用如下公式: =MID("10X98765432",MOD(SUMPRODUCT(MID(A2,ROW(INDIRECT("1:17")),1)*2^(18-R OW(INDIRECT("1:17")))),11)+1,1)=RIGHT(A2,1) 对于15位身份证,由于没有检验码,我们只能简单地去判断出生日期代码是否是一个有效的日期,避免输入一些像“731302”或“980230“等这样不存在的日期。

全国身份证及港澳台身份证验证js代码、函数。

// 988058查号网,骗子号码查询(http:// https://www.wendangku.net/doc/bb18011740.html,) //一下是验证身份证号码的js函数 function checkIdcard(idcard){ var Errors=new Array( "验证通过!", "身份证号码位数不对!", "身份证号码出生日期超出范围或含有非法字符!", "身份证号码校验错误!", "身份证地区非法!" ); var area={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"} var retflag=false; var idcard,Y,JYM; var S,M; var idcard_array = new Array(); idcard_array = idcard.split(""); //地区检验 if(area[parseInt(idcard.substr(0,2))]==null) return Errors[4]; //身份号码位数及格式检验 switch(idcard.length){ case 15: if ( (parseInt(idcard.substr(6,2))+1900) % 4 == 0 || ((parseInt(idcard.substr(6,2))+1900) % 100 == 0 && (parseInt(idcard.substr(6,2))+1900) % 4 == 0 )){ ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9] |[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$/;//测试出生日期的合法性 } else { ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9] |[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$/;//测试出生日期的合法性 } if(ereg.test(idcard)) return Errors[0]; else { return Errors[2]; } break; case 18: //18位身份号码检测 //出生日期的合法性检查

身份证校验码的解释

身份证校验码的解释 新居民身份证的号码是按照国家的标准编制的,由18位组成:前六位为行政区划代码,第七至第十四位为出生日期码,第15至17位为顺序码,第18位为校验码。作为尾号的校验码,是由号码编制单位按统一的公式计算出来的,如果某人的尾号是0-9,都不会出现X,但如果尾号是10,那么就得用X来代替,因为如果用10做尾号,那么此人的身份证就变成了19位,而19位的号码违反了国家标准,并且我国的计算机应用系统也不承认19位的身份证号码。Ⅹ是罗马数字的10,用X来代替10,可以保证公民的身份证符合国家标准。 身份证中第十八位数字的计算方法为: 1.将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7、9、10、5、8、4、2、1、6、3、7、9、10、5、8、4、2。 2.将这17位数字和系数相乘的结果相加。 3.用加出来和除以11,看余数是多少? 4余数只可能有0 、1、2、3、4、5、6、7、8、9、10这11个数字。其分别对应的最后一位身份证的号码为1、0、X、9、8、7、6、5、4、3、2。 5.通过上面得知如果余数是2,就会在身份证的第18位数字上出现罗马数字的Ⅹ。如果余数是10,身份证的最后一位号码就是2。 例如:某男性的身份证号码是340524************。我们要看看这个身份证是不是合法的身份证。 首先:我们得出,前17位的乘积和是189 然后:用189除以11得出的结果是17 + 2/11,也就是说余数是2。 最后:通过对应规则就可以知道余数2对应的数字是x。所以,这是一个合格的身份证号码。

这里面说的很清楚了,最后一位是用来辨别身份证真假的一种办法。而不是同年同月同日生的人的识别码。 贴个JA V A实现的校验算法 public static char doV erify(String id); { char pszSrc[]=id.toCharArray();; int iS = 0; int iW[]={7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2}; char szVerCode[] = new char[]{'1','0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'}; int i; for(i=0;i<17;i++); { iS += (int);(pszSrc-'0'); * iW; } int iY = iS%11; return szVerCode[iY]; } =IF(LEN(A101)=15,REPLACE(A101,7,,19)&MID("10X98765432",MOD(SUM(MID(REPLAC E(A101,7,,19),ROW(INDIRECT("1:17")),1)*2^(18-ROW(INDIRECT("1:17")))),11)+1,1),A101 excel计算最后一位的公式,也就是个校验码而已

身份证验证

彩色影像扫描仪 全国公民身份信息核查比对服务 操作手册 全国公民身份证号码查询服务中心 2010年7月

目录 1功能介绍 (1) 1.1关于彩色影像扫描仪 (1) 1.2关于全国公民身份信息核查比对服务 (1) 1.2.1服务定义 (1) 1.2.2核查比对结果 (2) 2建议配置 (3) 3扫描仪驱动安装 (4) 3.1硬件驱动程序安装 (4) 3.2扫描仪核心软件安装 (4) 4登录系统 (7) 5安装控件 (8) 5.1添加“可信站点” (8) 5.2“可信站点”自定义设置 (9) 5.3选择服务\安装控件 (10) 6扫描并核查比对 (12) 6.1正确放入证件 (12) 6.2选择证件类型 (12) 6.3扫描并核查比对 (13) 6.4反馈核查比对结果 (14) 6.5手工修改 (14) 7客户服务 (16) 8常见问题解答 (17) 8.1系统登录问题 (17) 8.2扫描仪没有响应 (17) 8.3页面错误导致无法提交 (18) 9特别声明 (20)

感谢您使用全国公民身份证号码查询服务中心提供的身份信息核查比对服务,我们将竭诚为您服务。 防范欺诈风险是你我共同的责任。 1功能介绍 1.1 关于彩色影像扫描仪 此彩色影像扫描仪是全国公民身份证号码查询服务中心监制的一款集扫描、识别、录入、核查比对为一体的专用扫描设备。扫描、识别、录入与我们的核查比对服务绑定在一起一键集成,为客户简化手工录入流程,提高工作效率。 1.2 关于全国公民身份信息核查比对服务 1.2.1服务定义 全国公民身份信息核查比对服务是指公民个人在进行社会和经济活动时,向有关机构主动提交身份证件,有关机构工作人员将公民主动提交的身份号码、姓名等信息传送至“全国公民身份信息系统”(以下简称“系统”)进行比对,系统将提供的数据与存储的数据进行比对后,返回被核查人公民身份号码、姓名与系统存储数据是否一致的结果。在核查比对结果为“一致”的前提下,如果系统存有该被核查人照片,则可以进一步比对照片,不提供任何其他信息。

如何用Excel验证身份证号码是否符合规则

EXCEL中如何提取身份证出生日期、性别、检验身份证号 码的正确性 中国居民身份证号码是一组特征组合码,原为15位,现升级为18位,其编码规则为:15位:6位数字常住户口所在县市的行政区划代码,6位数字出生日期代码,3位数字顺序码。 18位:6位数字常住户口所在县市的行政区划代码,8位数字出生日期代码,3位数字顺序码和1位检验码。 其中3位数字顺序码,是为同一地址码的同年同月同日出生人员编制的顺序号,偶数的为女性,奇数的为男性。 1、提取籍贯地区的行政区划代码(A2为身份证号,下同) 15与18位通用:=LEFT(A2,6) 如果有一个编码和省份地区的对照表,可以用VLOOKUP函数来提取地区信息。 2、提取出生日期信息 15位:=--TEXT(19&MID(A2,7,6),"#-00-00") 18位:=--TEXT(MID(A2,7,8),"#-00-00") 15与18位通用:=--TEXT(IF(LEN(A2)=15,19,"")&MID(A2,7,6+IF(LEN(A2)=18,2,0)),"#-00-00") 简化公式:=--TEXT((LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),"#-00-00") (请将输入公式的单元格格式设置为日期格式) 3、提取性别信息 15位:=IF(MOD(RIGHT(A2),2)=1,"男","女") 18位:=IF(MOD(MID(A2),17,1)=1,"男","女") 15与18位通用:=IF(MOD(MID(A2,IF(LEN(A2)=15,15,17),1),2)=1,"男","女") 简化公式:=IF(MOD(RIGHT(LEFT(A2,17)),2),"男","女") 4、检验身份证号码的正确性 18位身份证号码的最后一位是检验码,它是根据身份证前17位数字依照规则计算出来的,其值0~9或X。一般情况只要有一位数字输入错误,依照规则计算后就会与第18位数不符。当然不排除按错误号码计算后恰好与检验码相符的情况,但这种情况出现的可能性较低。因此,对18位号码的验证采用如下公式: =MID("10X98765432",MOD(SUMPRODUCT(MID(A2,ROW(INDIRECT("1:17")),1)*2^(18-R OW(INDIRECT("1:17")))),11)+1,1)=RIGHT(A2,1) 对于15位身份证,由于没有检验码,我们只能简单地去判断出生日期代码是否是一个有效的日期,避免输入一些像“731302”或“980230“等这样不存在的日期。 =ISNUMBER(--TEXT(19&MID(A2,7,6),"#-00-00")) 综合15位和18位后的通用公式为: =IF(LEN(A2)=18,MID("10X98765432",MOD(SUMPRODUCT(MID(A2,ROW(INDIRECT("1:1 7")),1)*2^(18-ROW(INDIRECT("1:17")))),11)+1,1)=RIGHT(A2),IF(LEN(A2)=15,ISNUMBER(--TEXT(19&MID(A2,7,6),"#-00-00")))) 由于目前15位身份证号码已经很少了,如果对15位的号码不需要作进一步的判断,则公式可以简化成:

第二代居民身份证验证系统技术方案

浙江省全程电子化平台升级改造 —第二代居民身份证验证系统项目方案 一、项目概述 随着市场主体经济户口基数庞大,每天来注册登记办事窗口办理各项业务的络绎不绝,窗口服务人员每天都需要受理大量的各类资格证明、新设立、变更营业执照等各项业务工作,办理人员的信息录入工作量十分巨大,同时在输入办理人员身份证信息过程中,及其可能出现错误,而对办理人员身份信息的可信度和身份证真伪上,又难于验证。导致在办理业务时进度非常缓慢,若是赶上业务高峰期,每个窗口前都挤满了人,办理人员经常为排队的问题而争吵,有时候还会丢失东西。这样不但给来办事的人员带来了不便,也给注册登记窗口服务形象大打折扣。因此,引入第二代居民身份证验证应用显得十分重要和紧迫。 二、项目建设目标 通过二代身份证验证应用的接入,与浙江省全程电子化登记平台相应模块整合,实现办事人员信息快速录入和身份信息真伪准确识别,提升服务质量。 1、能及时准确验证身份信息,有效提升注册窗口工作行政效能。 2、可以降低身份证输入过程中的差错率,提高系统录入正确率。 3、快速鉴别身份证真伪,增强办理人的可信度。 三、系统功能需求 在浙江省全程电子化登记平台内网审核端中嵌入二代身份证验证接口程序,在行政审批科服务窗口和分大厅服务窗口的PC机接入第二代居民身份证验证设

备,再通过登入浙江省全程电子化登记平台内网审核端并确认二代身份证验证设备都已正确连接后,在名称登记受理、设立受理、变更受理等工作中需要录入办事人员姓名、身份证号、住址信息时都可以通过操作“身份证导入”读取办理人的身份信息,于此同时也验证了办事人员身份证真伪,增强办理人的可信度。 a)名称登记受理 窗口在进行名称登记受理时,当投资人为自然人时,可以通过“身份证导入”功能,调用第二代居民身份证验证设备进行第二代居民身份证相关信息读取,并自动填入到投资人信息框中。 b)设立受理 窗口在设立受理时,法定代表人、投资人、董事、监事或经理、代理人等为自然人时,同样可以通过“身份证导入”功能,调用第二代居民身份证验证设备进行第二代居民身份证相关信息读取,并自动填入到投资人信息框中,保证了身份信息的真伪和减少人员信息录入时的错误。

身份证号码校验

Visual C++范例开发大全目录Mylaf 2012-10-23 第1篇VC++入门与基本文档视图 第1章Visual C++ 6.0 MFC程序设计快速入门 2 1.1 Visual C++ 6.0开发环境简介2 1.2 创建Visual C++ 6.0应用程序3 实例001 创建第一个MFC应用程序 3 实例002 创建第一个C++应用程序 4 第2章文档视图应用程序实例6 2.1 窗体操作6 实例003 实现启动时无子窗口的MDI程序 6 实例004 实现MDI应用程序启动时子窗口默认最大化7 实例005 MDI应用程序启动时主窗口默认最大化8 实例006 具有图片背景的MDI主窗口9 实例007 全屏显示的窗体12 实例008 创建带滚动条的窗体15 实例009 窗体拆分16 实例010 始终置顶的SDI程序17 实例011 不可移动的窗体18 实例012 创建不可改变大小的SDI窗口19 实例013 动态设置窗口位置和大小20 实例014 保存窗口状态21 实例015 双击主窗口弹出“打开”对话框23 2.2 标题栏25 实例016 获取标题栏高度25 实例017 获取标题栏上按钮的尺寸26 实例018 定制标题栏文字27 实例019 添加标题栏右键菜单项28 实例020 屏蔽标题栏右键系统菜单及隐藏按钮29 实例021 禁用标题栏上的最大化、最小化和关闭按钮30 实例022 显示和隐藏标题栏31 2.3 菜单32 实例023 获取菜单栏高度32 实例024 启用和禁用菜单33 实例025 动态添加菜单35 实例026 带单选标记的菜单36 实例027 复选标记的菜单38 实例028 带图标菜单的SDI程序39 实例029 带图标菜单的MDI 40 实例030 位图菜单41 实例031 创建客户区右键菜单43 实例032 隐藏和显示菜单栏44 实例033 为应用程序添加多语言支持45 2.4 工具栏48 实例034 工具栏按钮的添加、删除和分组48 实例035 不能停靠的工具栏48 实例036 下压式工具栏按钮49 实例037 给工具栏添加图像背景50 实例038 动态隐藏和显示工具栏51 2.5 状态栏52 实例039 显示和隐藏状态栏52 实例040 带进度条的状态栏53 实例041 在状态栏上加载图像54 实例042 滚动字幕的状态栏56 第3章对话框应用实例58 3.1 对话框界面58 实例043 设置对话框应用程序窗口启动位置58 实例044 半透明对话框59 实例045 创建不规则对话框应用程序60 实例046 拖动没有标题栏的对话框61 实例047 实现收缩对话框应用程序62 实例048 基于对话框的托盘程序64 实例049 为对话框应用程序添加菜单栏66 实例050 带有工具栏的对话框应用程序67 实例051 为对话框应用程序添加右键菜单68 实例052 模式对话框与非模式对话框69 实例053 属性页对话框71 实例054 向导式对话框72 实例055 为对话框应用程序添加启动界面73 实例056 为对话框应用程序添加百叶窗的启动界面76 3.2 通用对话框77 实例057 文件打开对话框78 实例058 在程序启动时弹出文件打开对话框79 实例059 在文件打开对话框中预览图片80 实例060 文件保存对话框81 实例061 选择文件夹对话框82 实例062 字体对话框84 实例063 颜色对话框86 实例064 查找与替换对话框87 第4章控件应用实例89 4.1 常见控件89 实例065 图文按钮89 实例066 具有随机图片背景的EditBox控件90 实例067 使用List Box显示系统逻辑磁盘驱动器列表92 实例068 利用列标题对列表视图进行数据排序93 实例069 使用Static Text控件显示当前系统时间95 实例070 使用Data Time Picker控件调整系统时间96 实例071 使用Combo Box控件控制字体大小97 实例072 使用Rich Edit控件显示文本文件98 实例073 使用Tree Control控件显示文件目录100 实例074 位图进度条102 实例075 使用Progress控件实现文字进度条103 实例076 使用Static Text控件显示当前时间104 实例077 使用Picture Box显示动态打开图像106 实例078 使用Group Box控件对控件分组107 实例079 使用Check Box实现多选109 实例080 使用Radio Button实现单选110 实例081 HorizontalScrollBar,VerticalScrollBar滚动条111

身份证正确检验及验证公式

验证公式一 =IF(LEN(H20)=18,IF(RIGHT(H20,1)="X",IF(CHOOSE(MOD(SUM(LEFT(RIGHT(H20,18) )*7 LEFT(RIGHT(H20,17))*9 LEFT(RIGHT(H20,16))*10 LEFT(RIGHT(H20,15))*5 LEFT(RIGHT(H20,14))*8 LEFT(RIGHT(H20,13))*4 LEFT(RIGHT(H20,12))*2 LEFT(RIGHT(H20,11))*1 LEFT(RIGHT(H20,10))*6 LEFT(RIGHT(H20,9))*3 LEFT(RIGHT(H20,8))*7 LEFT(RIGHT(H20,7))*9 LEFT(RIGHT(H20,6))*10 LEFT(RIGHT(H20,5))*5 LEFT(RIGHT(H20,4))*8 LEFT(RIGHT(H20,3))*4 LEFT(RIGHT(H20,2))*2),11) 1,1,0,"X",9,8,7,6,5,4,3,2)=LEFT(RIGHT(H20,1)),"正确!","出错啦! "),IF(CHOOSE(MOD(SUM(LEFT(RIGHT(H20,18))*7 LEFT(RIGHT(H20,17))*9 LEFT(RIGHT(H20,16))*10 LEFT(RIGHT(H20,15))*5 LEFT(RIGHT(H20,14))*8 LEFT(RIGHT(H20,13))*4 LEFT(RIGHT(H20,12))*2 LEFT(RIGHT(H20,11))*1 LEFT(RIGHT(H20,10))*6 LEFT(RIGHT(H20,9))*3 LEFT(RIGHT(H20,8))*7 LEFT(RIGHT(H20,7))*9 LEFT(RIGHT(H20,6))*10 LEFT(RIGHT(H20,5))*5 LEFT(RIGHT(H20,4))*8 LEFT(RIGHT(H20,3))*4 LEFT(RIGHT(H20,2))*2),11) 1,1,0,"X",9,8,7,6,5,4,3,2)=LEFT(RIGHT(H20,1))*1,"正确!","出错啦!")),IF(LEN(H20)=15,"老号,请注意!",IF(LEN(H20)=0,"缺号码","位数不对!"))) 验证公式二 =MID("10X98765432",MOD(SUMPRODUCT(MID(H20,ROW(INDIRECT("1:17")),1)*2^(18 -ROW(INDIRECT("1:17")))),11) 1,1)=RIGHT(H20,1) 身份证有15位和18位两种,身份证位数是否正确,我们可以用LEN函数判断。但身份证上的日期是否合法:月份是否在1-12之间,日期是否在1-31之间,并且2月份只有28或29天,其他月份30或31天,都不能超过范围。另外一般规定6岁以上才可以办理身份证,也就是年份也有一个超范围的可能性。综合起来看,有三类错误:“身份证位数不对”、“月日错误”、“年份错误”。 假定身份证号码在B1单元格,下面的公式可以综合判断以上三种错误: 验证公式三 =IF(OR(LEN(B1)=18,LEN(B1)=15),IF(LEN(B1)=18,IF(OR(MONTH(DATE(1*(MID(B1,7 ,4)),1*(MID(B1,11,2)),1*(MID(B1,13,2))))<>1*(MID(B1,11,2)),DAY(DATE(1*(M ID(B1,7,4)),1*(MID(B1,11,2)),1*(MID(B1,13,2))))<>1*(MID(B1,13,2))),"月日错误",""),IF(LEN(B1)=15,IF(OR(MONTH(DATE(1*(MID(B1,7,2)) 1900,1*(MID(B1,9,2)),1*(MID(B1,11,2))))<>1*(MID(B1,9,2)),DAY(DATE(1*(MID (B1,7,2)) 1900,1*(MID(B1,9,2)),1*(MID(B1,11,2))))<>1*(MID(B1,11,2))),"月

最新-身份证号码变更证明 精品

身份证号码变更证明 篇一:公民身份证号码变更证明公民身份号码更正证明当事人姓名:当事人住址:--------------------更正前公民身份号码---------------更正后公民身份号码----------------更正原因:------申请人住址:------申请理由:----------申请人签名:-----------联系电话:-----------经办人:更正日期:-年-月-日派出所会电脑打印出一份你的户籍证明,上面有你的详细户籍资料,同时派出所在上面再注明,此人原来的身份证号码是,现在的身份证号码是,这两个号码是属于同一个人,盖上派出所章子就行了。 公民身份证号码变更证明本辖区公民_______(曾用名_______),住址:_________________。 原使用的公民身份证号码为:系______________________(原因)。 根据《中华人民共和国居民身份证法》的有关规定及公民身份证号码的编制原则,为确保公民身份证号码的准确性和惟一性,自_______年_____月_____日起将原号码更改为:特此证明。 (县级公安机关名称并盖户口专用章)年月日注:请为申请人____________办理公民身份证号码变更的相关事宜。 此件为原件,如需要请留存复印件。 发函单位联系电话:篇二:公民身份证号码更改证明公民身份证号码更改证明本辖区公民_________(曾用名______)住址_____________________________________________________。 原使用公民身份证号码为:系(重错号)。 根据中华人民共和国居民身份证法的有关规定及公民身份证号码的编制原则,为确保公民身份证号码的准确性和唯一性,自_______年____月____日起将原号码更正为:特此证明。 (县级公安机关名称并盖户口专用章)年月日注:请为申请人_____________办理公民身份证号码变更的相关理宜,此件为原件,如需要请留存复印件。 篇三:身份证号变更证明身份证号变更证明身份证号变更证明公民身份证号码变更证明本辖区居民:性别:民族住址:原使用的公民身份证号码为□□□□□□□□□□□□□□□□□□系(重错号)。

18位身份证号码验证算法

‘算法为Excel表中用VBA实现身份证号码验证。只验证身份证号码正确否,不验证是否存在此身份证号码。算法思想可普遍适用其他地方。 Sub 身份证号码验证算法() Dim sfzArray(1 To 18) As Integer ‘身份证号码数组,数组每个元素记录每一位号码 Dim sfzPointer As Integer’身份证位数指针,指向每一位号码 Dim checkStart As Long’需验证的起始位置,Excel中第一个身份证号码行号 Dim checkEnd As Long’需验证的最后位置,Excel中最后一个身份证号码行号 Dim checkPointer As Long’验证指针,指向验证的位置 Dim sfzSum As Integer’身份证位数求和 Dim checkWord As String’校验位 Dim initialV alue As String’Excel表中身份证号码初始值 checkStart=2’根据实际情况修改 checkEnd=50000’根据实际情况修改 For checkPointer= checkStart To checkEnd initialV alue = CStr(Cells(checkPointer, 1))’默认Excel表第一列是身份证号码,根据实际情况修改 sfzSum = 0’初始化 For sfzPointer = 1 To 17 sfzArray(sfzPointer) = CInt(Mid(initialV alue, sfzPointer, 1))’对应位赋值给身份证号码数组 Select Case sfzPointer’根据位数不同,求和 Case 1, 11 sfzSum = sfzSum + sfzArray (sfzPointer) * 7 Case 2, 12 sfzSum = sfzSum + sfzArray (sfzPointer)* 9 Case 3, 13 sfzSum = sfzSum + sfzArray (sfzPointer) * 10 Case 4, 14 sfzSum = sfzSum + sfzArray (sfzPointer) * 5 Case 5, 15 sfzSum = sfzSum + sfzArray (sfzPointer)* 8 Case 6, 16 sfzSum = sfzSum + sfzArray (sfzPointer) * 4 Case 7, 17 sfzSum = sfzSum + sfzArray (sfzPointer) * 2 Case 8 sfzSum = sfzSum + sfzArray (sfzPointer) * 1 Case 9 sfzSum = sfzSum + sfzArray (sfzPointer) * 6 Case 10 sfzSum = sfzSum + sfzArray (sfzPointer) * 3 End Select Next sfzPointer sfzSum = sfzSum Mod 11 Select Case sfzS um’根据求模后的余数,可得校验位 Case 0 checkWord = 1 Case 1 checkWord = 0 Case 2 checkWord = "X" Case 3 checkWord = 9 Case 4 checkWord = 8

身份证证明样本

身份证证明样本 身份证证明样本身份证证明样本公民身份号码更正证明当事人姓名:XXX 当事人住址:--------------------更正前公民身份号码---------------更正后公民身份号码----------------更正原因:------申请人住址:------申请理由:----------申请人签名:-----------联系电话:-----------经办人:更正日期:-年-月-日―――――――――――――――――――――――――公民身份号码更正证明本辖区公民XXX第一条为了证明居民身份,便利公民进行社会活动,维护社会秩序,保障公民的合法权益,制定本条例。第二条居住在中华人民共和国境内的年满十六周岁的中国公民应当依照本条例的规定,申请领取中华人民共和国居民身份证。正在服现役的人民解放军军人、人民武装警-察,不领取居民身份证,由中华人民共和国中央军事委员会和中国人民武装警-察部队总部颁发军人和武装警-察身份证件。第三条居民身份证登记项目包括姓名、性别、民族、出生日期、住址。居民身份证登记项目使用全国通用的文字填写。民族自治地方的自治机关根据本地区的实际情况,可以决定同时使用本民族的文字或者选用一种当地通用的民族文字。第四条居民身份证的有效期限分为十年、二十年、长期三种。十六周岁至二十五周岁的,发给有效期十年的居民身份证;二十六周岁至四十五周岁的,发给有效期二十年的居民身份证;四十六周岁以上的,发给长期有效的居民身份证。第五条居民身份证由公安机关统一印制,颁发和管理。第六条公民应当向常住户口所在地的户口登记机关申请领取居民身份证,并按照规定履行申请领取手续。第七条华侨回国定居的,在办理户口登记手续时,申请领取居民身份证。第八条居民身份证有效期满或者登记内容有变更、更正或者证件严重损坏不能辩认时,应当按照规定申报换领新证;丢失证件的,应当申报补领。第九条公民被征集服现役的,在办理注销户口手续时,交回居民身份证;退回现役后,发还居民身份证或者再申请领取居民身份证。第十条被判处拘役、有期徒刑以上刑罚的人和被劳动教养的人以及被羁押的人,尚未申请领取居民身份证的,在服刑、劳动教养和羁押期间,不发给居民身份证;已领取居民身份证的,由执行机关按照规定收缴其居民身份证;释放或者解除劳动教养后,由本人申请领取居民身份证或者将原居民身份证发还本人。第十一条公民出境按照规定需要注销户口的,在办理注销户口手续时,交回居民身份证。第十二条公民死亡的,由公安机关收回居民身份证。第十三条公安机关在执行任务时,有权查验居民身份证,被查验的公民不得拒绝。执行任务的公安人员在查验公民的居民身份证时,应当出示自己的工作证件。公安机关除对于依照《中华人民共和国刑事诉讼法》被执行强制措施的人以外,不得扣留公民的居民身份证。第十四条公民在办理涉及政治、经济、社会生活等权益的事务时,可以出示居民身份证,证明其身份。有关单位不得扣留或者要求作为抵押。第十五条有下列行为之一的,按照《中华人民共和国治安管理处罚条例》有关规定给予处罚:(一)拒绝公安机关查验居民身份证的;(二)转让、出借居民身份证的;(三)使用他人居民身份证的;(四)故意毁坏他人居民身份证的;第十六条伪造、变造居民身份证的或者窃取居民身份证情节严重的,依照《中华人民共和国刑法》第一百六十七条的规定处罚。第十七条公安机关工作人员在执行本条例时,徇私舞弊、侵害公民合法权利和利益的,应当给予行政纪律处分,情节严重构成犯罪的,应当依法追究刑事责任。第十八条居留在中华人民共和国境内的外国人和无国籍人,不适用本条例。第十九条本条例的实施细则,由公安部制定,报国务院批准后施行。第二十条本条例自公布之日起施行。【章名】附:刑法有关条文第一百六十七条伪造、变造或者盗窃、抢夺、毁灭国家机关、企业、事业单位、人民团体的公文、证件、印章的,处三年以下有期徒刑、拘役、管制或者剥夺政治权利;情节严重的,处三年以上十年以下有期徒刑。治安管理处罚条例有关条文第十九条有下列扰乱公共秩序行为之一,尚不够刑事处罚的,处十五日以下拘留、二百元以下罚款或者警告:(一)扰乱机关、团体、企业、事业单位的秩序,致使工作、生产、营业、医疗、教学、科研不能正常进行,尚未造成严重损失的;(二)扰乱车站、码头、民用航空站、市尝商尝公园、影

身份证号码验证规则

身份证号码验证规则 说明:该规则为平台通用规则,适用于所有填身份证号码的场景。 一、概述 身份证号码中的校验码是身份证号码的最后一位,是根据GB 11643-1999中有关公民身份号码的规定,根据精密的计算公式计算出来的,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码,最后一位是数字校验码。 身份证最后一位是根据前面十七位数字码,按照ISO 7064:1983.MOD 11-2校验码计算出来的检验码。作为尾号的校验码,是由号码编制单位按统一的公式计算出来的,如果某人的尾号是0-9,都不会出现X,但如果尾号是10,那么就得用X来代替,因为如果用10做尾号,那么此人的身份证就变成了19位,而19位的号码违反了国家标准,并且我国的计算机应用系统也不承认19位的身份证号码。Ⅹ是罗马数字的10,用X来代替10,可以保证公民的身份证符合国家标准。 二、需求 产品身份证号码输入框内限制输入18个数字、英文字符,判断身份证号码是否为合法身份证号。不合法及字段超出或未输入内容,则在输入框后显示提示语,具体提示语详见对应的文档。 三、计算方法 1、将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 ; 2、将这17位数字和系数相乘的结果相加; 3、用加出来和除以11,看余数是多少; 4、余数只可能有0 1 2 3 4 5 6 7 8 9 10这11个数字。其分别对应的最后一位身份证的号码为1 0 X 9 8 7 6 5 4 3 2; 5、通过上面得知如果余数是2,就会在身份证的第18位数字上出现罗马数字的X。如果余数是10,身份证的最后一位号码就是2; 例如:某男性的身份证号码是340524************。我们要看看这个身份证是不是合法的身份证。 首先:我们计算3*7+4*9+0*10+5*5+...+1*2,前17位的乘积和是189 然后:用189除以11得出的结果是商17余2 最后:通过对应规则就可以知道余数2对应的数字是x。所以,这是一个合格的身份证号码。

身份证验证系统

身份证认证系统 15位身份证首先扩展为18位身份证。 号码的结构:公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。 地址码(前六位数):表示编码对象常住户口所在县(市、旗、区)的行政区划代码,按GB/T2260的规定执行。 出生日期码(第七位至十四位):表示编码对象出生的年、月、日,按GB/T7408的规定执行,年、月、日代码之间不用分隔符。 顺序码(第十五位至十七位):表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性。 校验码(第十八位数) (1)十七位数字本体码加权求和公式 S = Sum(Ai * Wi), i = 0, ... , 16 ,先对前17位数字的权求和 Ai:表示第i位置上的身份证号码数字值 Wi:表示第i位置上的加权因子 Wi: 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 (2)计算模 Y = mod(S, 11) (3)通过模得到对应的校验码 Y: 0 1 2 3 4 5 6 7 8 9 10 校验码: 1 0 X 9 8 7 6 5 4 3 2 部分核心代码(Java): public boolean checkBirthday(String indentityB){ int myYear=Integer.parseInt(birthYear.getSelectedItem()); int myMonth=Integer.parseInt(birthMonth.getSelectedItem()); int myDay=Integer.parseInt(birthDay.getSelectedItem()); if(Integer.parseInt(indentityB.substring(6,10))!=myYear) return false; if(Integer.parseInt(indentityB.substring(10,12))!=myMonth) return false; if(Integer.parseInt(indentityB.substring(12,14))!=myDay) return false; return true; } public boolean checkGender(String indentifyG){ boolean oddNumber; if(Integer.parseInt(indentifyG.substring(14,17))%2==0) oddNumber=false; else oddNumber=true;

相关文档