wince 系统的数据采集器读取扫描数据并上传
来源:互联网 发布:读书看报软件 编辑:程序博客网 时间:2024/05/01 06:31
分公司产品的出入库管理需要扫描条码操作。以前开发的软件是用普通的无线扫描枪,用声音提示扫描结果。由于仓库很宽,噪声大,有时无法听到声音提示,不知道扫描是否成功。操作人员意见很大(听不到扫描提示的就用手工记录条码,最后输入电脑),后来曾考虑用笔记本电脑做中继。感觉很变态。最后经过层层审批,终于同意购买有操作系统(wince)的条码数据采集器。
wince系统的pad 与普通的扫描枪有点不同,普通的扫描枪直接按扫描键就可以扫描条码。而wince系统的pad 需要开启扫描电源-->读取扫描结果-->关闭扫描电源。(为什么不是一直打开扫描电源?可能是出于省电,因为wince的pad 是由电池供电,而普通扫描枪是通过USB线供电)。
wince软件开发环境的部署,网上一大堆。部署好wince开发环境后, 根据厂家提供的sdk进行代码的编写,步骤如下:
- 开启扫描电源,厂家提供的dll开启
- 开启扫描读数,可以利用面版上的“扫描键”来触发,在form_keyDown事件中捕获“扫描键”是否按下。private void Form1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode.ToString() == "F5") { if (!flag) //如果没打开扫描开关,则声音提示 WCE_PlaySound("\\ResidentFlash2\\1.wav", IntPtr.Zero, (int)(Flags.SND_ASYNC | Flags.SND_FILENAME)); else Scanner_Trig(); //读取条码 }
- 读取到数据(厂家dll提供读取方法)后显示在文本框中(通过代理调用)和数据保存操作。private void ScannerRd() //读取条码数据 { byte[] bRecv = new byte[256]; byte len = 0; while (true) { len = 0; if (Scanner_Read(ref bRecv[0], ref len))// 厂家提供读取方法 if (len > 0) SetText(System.Text.Encoding.ASCII.GetString(bRecv, 0, len)); } } delegate void SetTextCallback(string text); private void SetText(string text)//读到数据后显示 { if (this.textBox1.InvokeRequired)//等待异步 { SetTextCallback d = new SetTextCallback(SetText); this.Invoke(d, new object[] { text }); //通过代理调用刷新方法 } else { if (text.Length > 12)//数据合法 ... //处理读到的数据 } }
- 关闭扫描电源
数据上传:扫描结束后,把pad拿到有wifi的地方上传数据,上传数据直接用ado.net,由于wince中没有dbnetlib.dll,无法直接操作远程数据,把dbnetlib.dll拷贝到安装 目录下就行了。
//按ADO.net方法上传数据 using (SqlConnection conn = new SqlConnection(sql_constr)) { conn.Open(); SqlCommand cmd = new SqlCommand("insert into.....", conn); cmd.ExecuteNonQuery(); ... }
0 0
- wince 系统的数据采集器读取扫描数据并上传
- 工业数据采集器,介绍嵌入式WinCE在远程数据采集系统设计
- WINCE读取系统数据或系统配置信息
- 使用火蜘蛛采集器Firespider采集天猫商品数据并上传到微店呢
- 采集WINCE设备GPS数据
- WinCE在工业生产现场采集数据的应用
- 网页数据采集系统
- 高速数据采集系统
- 数据采集系统
- PDA数据采集系统
- java--数据采集系统
- 环境数据采集系统
- ForeSpider数据采集系统
- Android------读取并选择系统联系人数据
- C#读取txt文档并上传至数据库,将上传的数据逐行删除
- 数据采集系统的软件滤波[转]
- 井场数据采集系统的架构演化
- 基于FPGA的数据采集系统
- Aplication简单使用示例
- [MFC学习笔记]--lesson8 对话框的设计
- 算法学习之排序:冒泡算法
- mongodb启动参数
- java.lang.NoClassDefFoundError:的处理
- wince 系统的数据采集器读取扫描数据并上传
- JSOI2013 旅行时的困惑
- Deep Learning(深度学习)学习笔记整理系列之(三)
- Android-加载大图片
- 教你如何查看识别hadoop是32位还是64位
- Linux系统的简易安装
- 案例研究:JavaScript图片库
- JS中关于clientWidth offsetWidth scrollWidth 等的含义
- 码流