c#或者js操作扫描仪如何实现

JavaScript019

c#或者js操作扫描仪如何实现,第1张

首先看你的应用场景,如果是C/S(服务端客户端应用程序),那么你是有客户端应用程序,直接用客户端C#代码调用扫描仪驱动就可以了 这种情况直接导入dll文件,调用其方法就可以了,要注意的就是除了项目目录下放驱动的dll 还要在编译目录的bin文件夹下放这个驱动dll,不然发布了会出现找不到dll的问题

如果你是B/S(服务端浏览器应用程序),那你就要选择js来调用扫描仪驱动,因为C#代码在服务端执行,是不可能调用到客户端的扫描仪驱动的,这个时候问题就变复杂了,因为在js调用客户端本地动态库的时候,就收到浏览器限制,IE默认是允许的,火狐和谷歌默认是不允许的,如果你的系统可以强制要求用户使用IE,那么问题也简单了 直接CreateObject 实例化驱动,然后调用驱动就可以了,如果需要兼容各种主流浏览器,你需要得到许可的,一般做法按谷歌浏览器为例 现在IE-Tab-Multi-(Enhance)_v1.0.2.1.crx组件,然后拖到谷歌浏览器里(就是安装active执行组件),其实质就是由IE内核来执行active 这样可以用JS通过数字证书等方式调用客户端的active了

你说的是扫二维码或者条形码的扫描枪,还是做影印件的扫描仪?

如果是扫描枪,扫描成功时,会读取到一个字符串,你会听到“滴”的一声

扫描枪可以设置的,扫描到数据后执行什么操作,比如,你可以把扫描仪设置成扫描到数据后自动按回车键。在你的页面上放个文本框TextBox,然后光标在文本框里时,开始扫描数据,扫描成功后会得到一个字符串,自动就填到文本框了,并且自动回车,你可以用js监听回车键就可以做你想做的事情了。

具体设置可以看扫描枪使用手册

简单

<input type="text" id="id1" onpropertychange="fo(this)">

....

<input type="text" id="idn" onpropertychange="fo(this)">

<script>

function fo(ele){

if(ele.nextSibling){

ele.nextSibling.focus()

}

}

</scrpt>

如果不行,给我发小纸条,肯定可以我试验过了