.Net 平台应用与技巧
MRZ图表分组数据源过滤设计示例
平台应用类
OrBit平台Job配置
【序列号规则】插件使用说明
工单自定义流程节点应用说明
平台 【SVN 版本管理】工具使用说明
平台SPC应用介绍
平台WebAPI文件上传、下载(OrBitWebAPI2)
平台【元对象授权】功能使用说明
平台【分级授权】功能使用说明
平台【消息对象】使用说明
平台【表单消息升级】应用说明
平台可配置【 Excel 文件导出】功能使用说明
按产品定义采集功能使用说明
用户自定义编码及系统单据状态、单据类型的颜色配置
系统中如何增加用户密码过期更换提醒
通用在线打印功能使用说明
平台技巧类
MS-SQL 添加并引用 DLL 程序集
OrBit “自定义对话框”使用说明
Matrix标签打印(OrBitMESHelp/OrBitMetaHelp)
MES事务对象Scripter--扩展方法
MES事务帮助类OrBitMESHelp
WebView2管理类--用于展示看板
元对象Scripter--扩展方法
元对象帮助类OrBitMetaHelp
外挂Exc程序(发布为平台插件)---调用自定义对话框
自定义对话框--Xml/Json数据解析神器
OrBit-KanBan File 类型应用说明
OrBit-X 如何支持 Https 协议
OrBit-X 平台 Bartender 标签模板制作说明
OrBit-X 平台元对象多文件上传、预览
OrBit-X 平台内置 WebAPI 使用说明
OrBit-X 应用打包-扩展工具-快捷迁移
OrBit平台“调用摄像头拍照、录制视频,并上传FTP”窗体控件的应用
元对象可配置Excel导入功能应用说明
元对象嵌入看板
基于 Json 数据格式的 Mrt 模板设计说明
如何利用 Bartender 标签模板实现一拖几打印
平台 Excel 对象导入功能应用说明
平台 MES 事务对象实现网格多选效果
平台 WebAPI 应用说明
平台中 Mrz 模板实现钻取功能
平台发布接口(OrBitWebAPI&OrBitWebAPI2)
平台通过 CLR 实现企业微信消息及文件自动推送
标签/报表实现只预览不打印
通过平台 Web 服务实现远端 Wifi 打印说明
静态事务“平铺按钮”控件的应用
静态事务”调用摄像头扫码识别条码(条形码/二维码)“功能的应用与实现
钉钉机器人接口实现及其他API扩展
-
+
首页
静态事务”调用摄像头扫码识别条码(条形码/二维码)“功能的应用与实现
# 一、概述 众所周知,传统的扫码输入外设是扫码枪,通过高清相机读码。然后,一般的PC或Windows平板或其他终端,都配备了摄像头。那么,可不可直接调用终端自身的摄像头,进行条码识别,从而省掉扫码枪呢?答案是肯定的。下面,就为大家阐述具体的应用与实现。 PS:由于底层引用的第三方dll是32位的,导致封装的控件也**只能在32位的OrBit Broswer中运行**。 [拍摄窗体控件] ![](/media//202204/2022-04-15_164645.png) dll文件: [【附件】R15dll.rar](/media/attachment/2023/03/R15dll.rar) demo OAP文件: [【附件】OrBitMOM (My UI BarcodeScanDemo).rar](/media/attachment/2022/04/OrBitMOM_My_UI_BarcodeScanDemo.rar) # 二、实现步骤 **1. 服务器插件(PluginService)目录下,添加相关的dll文件: AForge.dll/ AForge.Imaging.dll/ AForge.Controls.dll等** **2. 平台系统参数中配置Always DowLoad参数,则每次登录Broswer时,会自动从PluginService目录下载文件到本地的Broswer安装目录。** [dll下载参数] ![](/media//202204/2022-04-15_171203.png) **3. 静态事务对象中添加引用(BarCodeScan.dll)** [dll引用] ![](/media//202204/2022-04-18_104547.png) **4. 对象脚本实例化控件,及相关业务脚本编写** 1> 参数类型设定:将需要调用摄像头 ![](/media//202204/2022-04-15_172900.png) 2> 控件集合声明 ![](/media//202204/2022-04-15_173010.png) [对象脚本引用1] ```csharp /// <summary> /// 界面扫描控件集合 /// </summary> public List<ScanQRCode.BarcodeHelper> barcodeScannerList = new List<ScanQRCode.BarcodeHelper>(); ``` 2> 控件映射 [对象脚本引用2] 脚本代码: ```csharp /// <summary> /// 扫描参数设定 /// </summary> private void ScanParameterSet() { string paraName = null; string linkButton = null; string sql = @" SELECT TxnParameterName AS ParaName, dbo.Fn_StrSplitBy2Char(LinkToValueListParameter,'[',']',',') AS LinkButton FROM MESTxnObject LEFT OUTER JOIN MESTxnObjectParameter ON MESTxnObject.MESTxnObjectId = MESTxnObjectParameter.MESTxnObjectId WHERE MESTxnObjectParameter.DataType = 'S' AND MESTxnObjectName = '{0}' "; sql = string.Format(sql,Scripter.MESTxnName); try { DataSet ds = Scripter.GetSqlDataSet(sql); if (ds != null && ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { paraName = ""; linkButton = ""; paraName = ds.Tables[0].Rows[i]["ParaName"].ToString(); linkButton = ds.Tables[0].Rows[i]["LinkButton"].ToString(); ScanQRCode.BarcodeHelper barcodeScanner = new ScanQRCode.BarcodeHelper(Scripter, paraName,linkButton); barcodeScannerList.Add(barcodeScanner); } } } catch (Exception ex) { MessageBox.Show("[异常]:" + ex.Message); } } ``` 3> 方法调用 [对象脚本引用3] ![](/media//202204/2022-04-15_173634.png) # 三、控件使用说明 1. 自动识别视频源(**可支持USB外设**),默认连接第一个; 2. 若有多个摄像头,可以循环切换(类似手机切换前置摄像头/后置摄像头)。
摄像头调用
条码识别
HG0064
2023年3月3日 10:08
分享
上一篇
下一篇
目录
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
下载Markdown文件