身份证阅读器(新中新)写入受保护内存问题,已解决
使用:
[DllImport("SynIDCardAPI.dll", EntryPoint = "Syn_ReadMsg", CharSet = CharSet.Ansi)]public static extern int Syn_ReadMsg(int iPortID, int iIfOpen, ref IDCardData pIDCardData);
Syn_ReadBaseMsg 虽然不存在资源释放问题,但处理照片信息十分麻烦。
Syn_ReadMsg返回结构化信息,处理方便,但在其它线程中处理图片,直接使用图片报写入受保护内存。此问题处理方式分两步:
- 管理员方式运行;
先将图片复制到临时文件夹,再使用。
一.使用管理员方式运行VS。
项目中 添加应用程序清单文件:
打开app.manifest文件,将:
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
修改为:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
然后打开 项目属性 ,将 应用程序 标签页中的 资源 中的 清单 修改为新建的 app.manifest。
重新生成项目
二.
//设置路径及返回参数格式private void Setter(){if (!System.IO.Directory.Exists(BaseConfig.SavePathPhoto))System.IO.Directory.CreateDirectory(BaseConfig.SavePathPhoto);if (!System.IO.Directory.Exists(BaseConfig.SavePathPhoto+"\\tmp"))System.IO.Directory.CreateDirectory(BaseConfig.SavePathPhoto+"\\tmp");//临时文件夹if (!System.IO.Directory.Exists(BaseConfig.SavePath))System.IO.Directory.CreateDirectory(BaseConfig.SavePath);player.LoadAsync();byte[] cPath = new byte[255];cPath = System.Text.Encoding.Default.GetBytes(BaseConfig.SavePathPhoto);Syn_SetPhotoPath(2, ref cPath[0]);// Syn_SetPhotoType(1);Syn_SetPhotoName(3);Syn_SetSexType(1);Syn_SetNationType(2);Syn_SetBornType(2);Syn_SetUserLifeBType(2);Syn_SetUserLifeEType(2,0);}
//删除临时文件夹的照片try{string[] files = Directory.GetFiles(BaseConfig.SavePathPhoto + "\\tmp");foreach (var f in files){try{File.Delete(f);}catch { }}}if(Syn_ReadMsg(BaseConfig.NPort, 0, ref CardMsg) == 0){Name.Text = CardMsg.Name.Trim();Sex.Text = CardMsg.Sex;Nation.Text = CardMsg.Nation;Born.Text = CardMsg.Born;Address.Text = CardMsg.Address;ID.Text = CardMsg.IDCardNo;GrantDept.Text = CardMsg.GrantDept;UserLifeBegin.Text = CardMsg.UserLifeBegin;Link.Text = "--";UserLifeEnd.Text = CardMsg.UserLifeEnd;
//先将图片复制到临时文件夹,再显示string fileName = System.IO.Path.Combine(BaseConfig.SavePathPhoto, string.Format("{0}_{1}.bmp", CardMsg.Name.Trim(), CardMsg.IDCardNo));string newFileName = string.Format("{0}_{1}_{2}.bmp", Guid.NewGuid().ToString(), CardMsg.Name.Trim(), CardMsg.IDCardNo);string newPath = System.IO.Path.Combine(BaseConfig.SavePathPhoto, "tmp", newFileName);File.Copy(fileName, newPath);fileNameForUpdate = newPath;photo.Source = new BitmapImage(new Uri(newPath, UriKind.Absolute));}
身份证阅读器(新中新)写入受保护内存问题,已解决相关推荐
- 新中新身份证阅读器不显示图片
USB接口的新中新身份证阅读器使用过程中,出现读卡不显示图片,以及刷卡多次后,软件自动关闭的现象.使人很苦恼,经过我的反复测试,现在提供解决方法如下: 1.下载动态库链接文件"WltRS&q ...
- 新中新二代身份证dll调用,报尝试读取或写入受保护的内存,这通常指示其他内存已损坏 这个错 ...
新中新二代身份证dll调用问题:调用这个dll时, 到这个方法: Syn_ReadMsg(nPort, 0, ref CardMsg),就报尝试读取或写入受保护的内存.这通常指示其他内存已损坏 这个错 ...
- c# 新中新二代身份证阅读,包含头像,支持华视
需要用到dll和文件: 其中3个dll文件是需要调用的dll,license.dat文件为解压图片的授权文件 以下是需要用到的dll里面的方法: /************************端口 ...
- 新中新SDK 身份证代码编写
新中新二代证阅读器广东服务中心主要经营新中新身份证阅读器,新中新身份证读卡器,新中新二代身份证阅读器,新中新二代身份证读卡器等.请认准新中新二代证阅读器网址:www.synjones.net.cn 新 ...
- 关于新中新二代身份证读卡器DKQ-A16D的一些问题
今天拿到了新中新DKQ-A16D,随机光盘里有以下文件: 我遇到的问题是,如果直接打开\二代征SDK开发包\DLL\测试程序\C#_2008\WindowsFormsApplication1\目录下的 ...
- python能调用身份证读卡器吗_用Python在Linux下调用新中新DKQ-A16D读卡器,读二代证数据...
1.背景 最近在研究二代证读卡器,手头上的设备是新中新DKQ-A16D,在官网(https://www.onecardok.com.cn/download)逛了一圈,发现Win下的示例,浏览器插件很多 ...
- VUE实现华视身份证阅读器读取身份证信息(本文分两种情况,第一中是点击按钮读取信息,一种是自动读取信息)
本文是用了vue+element来实现华视身份证读卡器读取身份信息的,当然在开发之前要做好前提准备,就是厂家提供对应设备的api和安装对应的驱动.本文通过两种方法来实现读取信息,第一种是点击按钮读取信 ...
- 新中新二代身份证读卡Syn_ReadBaseMsg方法
新中新二代身份证读卡器dkq-a16d,在C#中读卡开发时,参考随机附带的C#参考代码,能够读取成功,但读几次程序就莫名其妙的关掉了,有时连错误都捕捉不到,搞了很长时间也没搞定,后来以为会不会是win ...
- 新中新DKQ-A16D身份证读卡器C#对接程序出坑记
搞了很久,终于把这件事搞定了.说来郁闷,最近做一个小项目,用了新中新电子的DKQ-A16D身份证读卡设备,需要编程实现身份证数据的读取,这种东西其实是套路感很强的东西,问供应商拿到API,有问题找客服 ...
最新文章
- SynchronizedMap和ConcurrentHashMap的深入分析
- Spring框架中bean的生命周期
- 全球及中国氰化金钾行业需求潜力及供应前景调研报告2022-2027年
- 从零开始学习jQuery (九) jQuery工具函数 【转】
- 指针,指针函数,指针数组的区别
- 广东48.6万人资产超600万 华东超600万人群最多
- linux 下载mysql5.7.22
- java类输出_java的输出类
- ETH突破620美元关口 日内涨幅为5.36%
- Java暑期实训——简易计算器
- filezilla linux服务器端,FileZilla Server安装配置教程
- 当你觉得焦虑,烦躁的时候怎么办?
- python用*号输出字母c的图案_第1.6题:使用Python生成字母验证码图片
- SGD的几种优化加速模型动态图形显示
- bzoj4605: 崂山白花蛇草水(权值线段树套k-dtree)
- Bluetooth SIG定义的标准Characteristics UUID
- Caffe中常用的层:Dropout层详解
- 经济学人翻译练习——加拿大自由党政府试图提振经济4.16
- (私人收藏)灰蓝绿3种风格的套图图标
- 一起来学k8s 06.安装dashboard