分公司产品的出入库管理需要扫描条码操作。以前开发的软件是用普通的无线扫描枪,用声音提示扫描结果。由于仓库很宽,噪声大,有时无法听到声音提示,不知道扫描是否成功。操作人员意见很大(听不到扫描提示的就用手工记录条码,最后输入电脑),后来曾考虑用笔记本电脑做中继。感觉很变态。最后经过层层审批,终于同意购买有操作系统(wince)的条码数据采集器。
wince系统的pad 与普通的扫描枪有点不同,普通的扫描枪直接按扫描键就可以扫描条码。而wince系统的pad 需要开启扫描电源-->读取扫描结果-->关闭扫描电源。(为什么不是一直打开扫描电源?可能是出于省电,因为wince的pad 是由电池供电,而普通扫描枪是通过USB线供电)。
wince软件开发环境的部署,网上一大堆。部署好wince开发环境后, 根据厂家提供的sdk进行代码的编写,步骤如下:
- 开启扫描电源,厂家提供的dll开启
private void button1_Click(object sender, EventArgs e) { if (button1.Text == "打开扫描") { flag = Scanner_Open(); if (flag) //成功打开 { button1.Text = "关闭扫描"; if (thread == null) { thread = new Thread(ScannerRd); thread.IsBackground = true; thread.Start();//启用扫描循环,等待按键 } } else //不成功打开 { MessageBox.Show("扫描枪出错!"); this.Close(); Application.Exit(); } } else { if (thread != null) { Scanner_StopRead(); //关闭扫 thread.Abort(); thread = null; } Scanner_Close(); flag = false; button1.Text = "打开扫描"; } }<