`

【转】Symbol MC3090开发心得

阅读更多
【转】Symbol MC3090开发心得
2010-11-01 下午 10:45
公司从去年开始实施MES系统,仓库和质检需要用到PDA,我们购买了Symbol MC3090,第一次接触这玩意,又没有说明书,怎么都玩不好,摆弄了一整天,连无线局域网都连不上。问了供应商的技术人员,按步骤做了一遍,还是不行。说到程序开发,更是一头雾水,本来自己就是半路出家的程序员,根本没有系统学习过程序开发,更是从来都没做过PDA的开发,连用什么工具软件都不知道。而MES软件开发商也不熟悉PDA开发,最后只好向领导汇报,需要找PDA供应商来给我们开发。结果供应商一报价,大家都傻眼了,就开发成品入库审核、库存盘点和检验判定三个小模块,居然要5万多,这样一来整个项目预算将会大大超支。没办法,又想通过MES软件开发商从他们以前的客户哪里获得支持,但估计是因为没有报酬的原因,他们的技术人员也不愿意搭理我们。
随着系统验收的日期越来越近,领导催得越来越急,我又再一次寄希望于网络,希望能在网络上找到相关的开发资料。这时有了个意外的惊喜,PDA突然能连上无线网了。我回想了一下,原来是因为我通过基座连过网,然后PDA获得了IP地址,无线网就这样连通了。
然后在网上也找到了一些资料,感谢leader_ww,他写的Symbol 开发初体验(http://blog.csdn.net/leader_ww/archive/2008/12/17/3540824.aspx)让我对PDA开发有了初步的认识,经过多次测试,我的PDA程序终于能够正常使用了。
1、我是用Visual Studio 2005来开发的。
2、安装Symbol开发包:Symbol Mobility Developer Kit V1.7 for .NET。
3、安装Microsoft ActiveSync 4.5 中文版,用于连接PDA,部署程序时用到。
4、必须安装Windows Mobile 5.0 Developer Resource Kit,否则程序无法运行(Symbol MC3090的操作系统是WinCE5.0)。
5、在VS2005找不到leader_ww说的Windows Mobile 5.0 Pocket PC Emulator,所以安装了Microsoft Windows CE 5.0 Emulator,但不知道怎么用,每次都得部署到PDA进行调试。
6、我在VS2005的工具箱添加的一个选项卡,名字叫做Symbol Technologies,然后进入选择项在.NET Framework 组件中选择Barcode和Imaging,在选项卡即会出现Barcode、Imaging和MagStripe三个选项。
7、在“引用”里添加 symbol 及 Symbol.Barcode.Design 两个 DLL文件。
8、添加一个窗体,在窗体上添加一个TextBox命名为tbBarCode。
9、从工具箱中将Barcode选项拖入窗体,默认名称为barcode1
10、打开form1.Designer.cs,在barcode1的定义后加两个方法:
            this.barcode1.OnRead += new
Barcode.Barcode.ScannerReadEventHandler(this.barcode1_OnRead);
            this.barcode1.OnStatus += new
Barcode.Barcode.ScannerStatusEventHandler(this.barcode1_OnStatus);
11、在form1.cs中添加上述两个方法的实现过程
        private void barcode1_OnStatus(object sender, Symbol.Barcode.BarcodeStatus barcodeStatus)
        {
            statusBar1.Text = barcodeStatus.Text;
            tbBarCode.Focus();
        }

        private void barcode1_OnRead(object sender, Symbol.Barcode.ReaderData readerData)
        {
            if (readerData.Result == Symbol.Results.SUCCESS)
            {
                string BarCode = readerData.Text;
                if (BarCode.Substring(0, 1).CompareTo("9") <= 0)//条码:单据号前带箱号
                {
                    BarCode = BarCode.Substring(3, BarCode.Length - 3);//取出单据号
                }
                tbBarCode.Text = BarCode.ToString();//将条码显示出来

                //如果托盘条码不为空,则返回产品信息
                if (tbBarCode.Text.Trim() != "")
                {
                    getProductInfo();
                }
                else
                {
                    tbBarCode.Focus();
                    tbResult.Text = "托盘条码不能为空,请重新输入!";
                }
            }
        }
12、将barcode1的EnableScanner属性改为True。
13、将应用程序部署到Windows CE5.0 设备进行调试。
当然,想要完成MES系统的成品入库审核等操作,还必须模拟MES系统的成品入库审核等操作编写WebService程序,PDA程序只要调用WebService程序即可。






  • 大小: 53.8 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics