asp.net 读取身份证源码
一般来说winform应用程序解决这个问题起来时很容易的,web应用程序就麻烦一点了。 这里我说说我的解决思路: 一、你必要有联机型居民身份证阅读器一个(带驱动光盘),这里我用的是精伦电子公司的iDR200,并有这个阅读器的开发接口说明。 二、新建一个winform控件项目ReadCardControl,添加一个主类ReadCard 1、 声明dll入口 [DllImport("Sdtapi.dll")] private static extern int InitComm(int iPort);//初始化 [DllImport("Sdtapi.dll")] private static extern int Authenticate();//卡认证 [DllImport("Sdtapi.dll")] private static extern int ReadBaseInfos(StringBuilder Name, StringBuilder Gender, StringBuilder Folk, StringBuilder BirthDay, StringBuilder Code, StringBuilder Address, StringBuilder Agency, StringBuilder ExpireStart, StringBuilder ExpireEnd);//读取数据,推荐使用 [DllImport("Sdtapi.dll")] private static extern int CloseComm();//关闭端口 [DllImport("Sdtapi.dll")] private static extern int ReadBaseMsg(byte[] pMsg, ref int len);//读取数据,这里不用 [DllImport("Sdtapi.dll")] private static extern int ReadBaseMsgW(byte[] pMsg, ref int len);//读取数据,这里不用 [DllImport("kernel32.dll")] private static extern int Beep(int dwFreq, int dwDuration);//用来大吼一声 2、读卡方法 private string[] arrys = null;//声明用来保存身份证信息的数组 public void OnTimer() { StringBuilder Name = new StringBuilder(31); StringBuilder Gender = new StringBuilder(3); StringBuilder Folk = new StringBuilder(10); StringBuilder BirthDay = new StringBuilder(9); StringBuilder Code = new StringBuilder(19); StringBuilder Address = new StringBuilder(71); StringBuilder Agency = new StringBuilder(31); StringBuilder ExpireStart = new StringBuilder(9); StringBuilder ExpireEnd = new StringBuilder(9); //int len = 0; //string[] temp; char[] param = { '\0' }; byte[] pMsg = new byte[256]; string[] baseinfo = new string[9]; //打开端口 int intOpenRet = InitComm(1001); if (intOpenRet != 1) { //SetText("阅读机具未连接", lblMsg); return; } //卡认证 int intReadRet = Authenticate(); if (intReadRet != 1) { //SetText("卡认证失败", lblMsg); CloseCo
相关文档:
这几天在写一个页面,页面内容全是局部刷新,最近看到了Ajax控件,觉得很新鲜,于是就用控件开发,遇到的问题是在太多.
头都搞晕了 ,以后不用了 .推荐还是使用WebServices的好.
1.已成功与服务器建立连接,但是在登录过程中发生错误。 (provider: 共享内存提供程序, error: 0 - 管道的另一端上无任何进程。)
此错误我在网上找 ......
Eval是asp.net1.1中常
用的绑定语法,它是“单向”的,即绑定时把数据源上相应的值赋到该控件上,Eval的任务就完成了
而Bind所谓的“双向”就是:在绑定时,把
数据源上相应的值赋到该控件上,并且,在提交时,自动提取用户在该控件上输入的值。
Code
<
EditItemTemplate
>
&nb ......
快捷键 功能
CTRL + SHIFT + B生成解决方案
CTRL + F7 生成编译
CTRL + O 打开文件
CTRL + SHIFT + O打开项目
CTRL + SHIFT + C显示类视图窗口
F4 显示属性窗口
SHIFT + F4显示项目属性窗口
CTRL + SHIFT + E显示资源视图
F12 转到定义
CTRL + F12转到声明
CTRL + ALT + J对象浏览
CTRL + ALT + F1 ......
要实现a控件控件触发b控件服务器端事件,需给a控件添加js脚本,以b控件名义提交页面,具体代码:
var theForm = document.forms['form1'];
theForm.__EVENTTARGET.value = "b"; //触发b控件服务器端方法
theForm.__EVENTARGUMENT.value = "a trigger";//传递的参数
theForm.submit();
注意:需要设置页面属性中的 enab ......