这两天接触到了一些硬件设备与软件之间的交互。
主要是用到了神思二代身份证读卡机器,让它能把身份证的信息显示到页面中。
按照提供的接口来写,主要是用js来调用ocx的控件来读取身份证,ic卡的内容,但是经过了两天的调试才成功,下面把我遇到的一些问题说明一下,给自己一个提醒,也希望能帮到大家。
1,刚开始用拿到的只是一些ocx控件,还有一个批处理文件,这个批处理文件主要是将一些用到的ocx,dll文件拷贝到C:盘的Windows/System32目录下,因为我的操作系统是64位的,所以运行这个批处理文件可能会有问题,只能重新找台机器。
2,找了一台32位XP系统的机器,并且将ocx文件拷贝到Windows/System32目录下,(可能是因为在批处理文件中已经注册了这些ocx文件,所以我没有注册这些ocx文件)
3,下面就进入到html页面去写js调用ocx控件代码,html的代码如下:
<object classid="clsid:{XXXXXXXX-XXXX-XXXXXX-XXXX-XXXXXXXX}" codebase="" id="idCardReader" style="display:none" width="0" height="0"></object>
这里面classid是通过查看注册表的到的(可以百度一下怎么查注册表ocx控件)
js的代码如下:
function readIDCard(){
var reader=$("idCardReader");
//alert(reader);
reader.DoRead(); //控件的卡中的信息
//alert(reader.IDName);
if(reader.IDName!="" && reader.IDName!=null) {
if(form1.userName.value==""){
form1.userName.value=reader.IDName;
form1.credentialCode.value=reader.IDCode; form1.currentAddress.value=reader.IDAddress;
}else{
if(form1.userName.value=reader.IDName&&reader.IDName!=""){ form1.userName.value=reader.IDName; form1.credentialCode.value=reader.IDCode; form1.currentAddress.value=reader.IDAddress;
}}}}
但是无论如何调用该方法,总是提示“对象不支持此属性或方法”。
在网上搜了许多资料,可能出现的原因如下
(1)有可能是浏览器的问题,可能因为浏览器的安全级别过高,不允许未签名的控件下载或运行(这个在浏览器的工具-->Internet选项-->安全 里面的级别设置一下就行)
(2)可能是当前页面中引入的js发生冲突以至于js调用控件的方法未识别。
我就是因为js冲突这个原因导致身份证读卡机一直读卡失败,开始一直以为是硬件设施的问题,可能是因为我把项目搭在了64位操作系统上,导致读卡失败,但是后来想了一下,我用的是32位XP系统去访问服务器的,就算是使用了控件,在我的本机上也已经注册过了,应该不会有问题,之后我将调用控件的html页面引入的所有js都注释了,果然读出来了,看来是我一开始解决问题的思路不对,出发点就错了,看来经验还需要慢慢的积累,请多多指教
分享到:
相关推荐
主要涵盖jacob调用ocx控件的方法以及事件的源码demo,同时还有html页面中通过js调用ocx控件的代码示例,并附带自己开发的ocx控件,运行时需要注意先注册控件,并且配置好jacob安装包。
使用vc6开发的ocx控件,在js脚本中进行调用,js对ocx回调进行响应
U800ocx.html 调用ocx控件的html文件 U800ocx - firefox.html 支持firefox的调用ocx控件的html文件 TypeLibraryExplorer.rar ocx文件查看器 FFOCX.zip 让FireFox支持OCX插件的安装包
在vs2010下使用C++开发并使用ocx控件教程,同时说明JavaScript调用ocx控件方法
编写了ocx控件之后。regsvr32注册之后。在注册表里获得该对象...然后再JavaScript下就可以调用了。具体代码参考程序。 比如说ocx控件里面有connection()方法。通过ocx控件的id来引用。即ocx的id.connection()来引用
vs2010开发activex(MFC)控件/ie插件(一),测试ocx控件加载 vs2010开发activex(MFC)控件/ie插件(二),js传参数 vs2010开发activex(MFC)控件/ie插件(三),js调用ocx控件的接口函数
由于网页中很难实现进度条的添加,所以开发了一个com组件来实现网页中加载进度条控件
用于自助终端,支持A3/A4打印,支持选择本地打印机和共享打印机,可查询mac地址,用于集成快速打印证照文件,简单易用,附带完整示例,使用前部署到web服务器和注册ocx
Javascript调用OCX属性,方法,事件,分别在HTML页里和asp.net页面中实现。ocx控件请自备。我的OCX控件只是限于与自已的服务器进行通讯。程序已调通。附加了OCX的打包方法。
Html Js 调用 activex 控件 示例 代码
NULL 博文链接:https://cooljava86.iteye.com/blog/1399243
资源为ie下ocx开发,并且在项目中实际运用,支持js直接调用对应的接口和触发事件
web端 JavaScript vue 前端开发 精伦 idr210 ocx控件和接口文档 V4.1.0.4、身份证识别、读卡器
可以在线对WORD进行操作,用javascript在客户端调用即可.
高拍仪控件集成,即各类应用软件系统通过集成高拍仪控件,解决在java、.net、php等软件开发中遇到的高拍仪编程操作问题,快速在asp.net、jsp、asp等web项目中调用高拍仪设备,使得用户办公流程更便捷、顺畅。...
串口开发js调用MSCOMM32插件的例子 内含测试的html页面及ocx控件 需进行注册 开发环境xp
这是开发的一个简单activex控件,调用底层dll实现简单加法,再在web的js语句中调用该控件包来使用它的一个典型例子
使用VS2019MFC ActiveX开发的ocx控件,通过 js调用ocx 实现计算器功能。
activex或atl控件生成cab包并被html/js调用, http://blog.csdn.net/dragoo1/article/details/8858027
html页面调用大华摄像头,实现实时监控,以及回放、视频下载,云控制、视频窗口个数、预览、通道等并且是根据时间范围下载视频demo,并且附带了exe用于快速安装ocx控件