honeywell D6110开发的一个工厂仓库追溯识别
近日。接触并开发了一个用honeywell D6110 二维扫描PDA的项目,应用也比較简单。
就是货品物料编码。通过中间码相应,然后中间码再依照不同OEM品牌须要生成各种商品条码并带有流水号。
要求仓库做到进出的时候,扫描条码,记录流水。生成物料数量汇总给CRM使用。
先给自己广告一下。贴几个图。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvenlhaTAwMQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvenlhaTAwMQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
广告完了,关注我的人,肯定有回报。
honeywell D6xxxx 系列机器,如今一般都是 windows mobile 6.5的系统。其它开发没什么难度依照VS去做就好了。
我想说的是 honeywell提供的SDK。
1。评价:按道理来说,这样的一线大品牌,SDK应该新云流水一般看着舒服条理化(这里再赞一下MOTO),但是我却发现honeywell文档有非常多瑕疵。
详细什么瑕疵就不多说了。
总体百分制的话,给个80分吧(MOTO能够给95分)。
2。说说,程序猿们和我一样会面临的坑:
和大家一样,拿到开发样机,登录官网,下载SDK。网上最新版本号呢 R812,根据SDK说的,还须要 WM6.5.3 DTK (瑕疵。事实上6.1就能够,不是非要6.5.3)
安装完毕后,大家最关心的,当然是 decode 扫描条码部分了。这是独有的。
3。依照惯性思路。大家都会细致的阅读 SDK 文档,文档中 ,decoding 部分向导就是,使用 decodeComponet,貌似还不错,Samples中还有demo。
于是乎,我掉进了两个大坑。
这是两个瑕疵。
a。依照 decodeComponet 控件加入步骤,SDK文档根本就是在扯淡。
你根本找不到路径。至少我在 VS2008 + sdk812 全然不是。
正确路径:C:\Program Files\Honeywell\SDK for Windows Embedded Handheld\Assemblies_CF3\HSM.Embedded.Decoding.DecodeComponent.dll
b,费了九牛二虎之力。最终找到了那个该死的控件。工具箱最终显示了。于是,不自然的就执行那个DEMO试试咯。
我去,再次掉进大坑。并且是深不见底。
一打开那个 DecodeComponent 演示,显示,界面控件错误。属性不正确。MY GOD。他们自己的东西都有错误!
!
。。
我研究啊研究啊研究啊研究啊,我天昏地暗。最后各位DX猜猜怎么解决的?????
加装了一个SDK7。将控件换成SDK7版本号,打开SDK8的 DEMO。搞定!
。!
。
升级本无可厚非,拜托,有点大公司严谨态度,将那个DEMO 也升级一下。不要误导程序员们。
4。终于。我还是放弃了decodeComponet。我发现。尽管简单功能也强大。
可是不够灵活,我改用DecodeAssembly,基本上一路顺风了。
仅仅是最后,有个小问题不太理解。既然已经有个 linearcode 类型。为啥要将EAN/UPC条码,独立归类到retailcode呢???不理解中。
。。。
。。
honeywell D6110开发的一个工厂仓库追溯识别的更多相关文章
- 建立你的第一个 Git 仓库
虽然 Git 确实是被许多重要软件选作版本控制工具,但是并不是仅能用于这些重要软件;它也能管理你购物清单(如果它们对你来说很重要的话,当然可以了!).你的配置文件.周报或日记.项目进展日志.甚至源代码 ...
- 标准程序员系列-Github篇-初始化一个代码仓库
下面将一步步介绍怎样使用GitHub来初始化一个项目的版本控制仓库: 1. 到GitHub上注册自己的账号:https://github.com/ 2. 创建第一个代码仓库一个仓库相当于一个项目的代码 ...
- Git 系列(三):建立你的第一个 Git 仓库
现在是时候学习怎样创建你自己的 Git 仓库了,还有怎样增加文件和完成提交. 在本系列前面的文章中,你已经学习了怎样作为一个最终用户与 Git 进行交互:你就像一个漫无目的的流浪者一样偶然发现了一个开 ...
- 如何将现有 git 仓库中的子项目单独抽出来作为一个独立仓库并保留其提交历史
很多时候,我们会遇到在一个git仓库下包含了很多小项目,但是随着有些项目的需求逐渐增大或则市场需求,我们需要将其抽离出来,作为一个单独的项目进行维护并开发. 但是,如果直接拷贝文件粘贴到新建的git ...
- git一个本地仓库连接多个远程仓库
前言:由于公司的GIT是内网服务器,而在家工作访问不了内网服务器,由此想把本地仓库连接一个外网的GIT服务器(码云),方便不在公司时开发. 原文 某些场合,一个git项目需要能同时使用两个甚至多个远程 ...
- 我开发了一个产品--Markdown Notes
大家好,我开发了一个工具类软件产品--Markdown Notes,中文名是Markdown笔记.想写一篇有关它的文章,目的就是为了推广.推广.推广:) BTW:本文就是用这个工具所写的.
- [Ruby on Rails系列]3、初试Rails:使用Rails开发第一个Web程序
本系列前两部分已经介绍了如何配置Ruby on Rails开发环境,现在终于进入正题啦! Part1.开发前的准备 本次的主要任务是开发第一个Rails程序.需要特别指出的是,本次我选用了一个(Paa ...
- 开发部署一个简单的Servlet
Servlet是一个执行在服务器端的Java Class文件,载入前必须先将Servlet程序代码编译成.class文件,然后将此class文件放在servlet Engline路径下.Servlet ...
- WPF和Expression Blend开发实例:一个样式实现的数字输入框
原文:WPF和Expression Blend开发实例:一个样式实现的数字输入框 今天来一个比较奇淫技巧的手法,很少人用,同时也不推荐太过频繁的使用. 先上样式: <Style x:Key=&q ...
随机推荐
- 七、C# 接口
并非只能通过继承使用多态性,还能通过接口使用它. 和抽象类不同,接口不包含任何实现(方法). 然后和抽象类相似,接口也定义了一系列成员,调用者可以依赖这些成员来支持一个特定的功能. 实现接口的类会 ...
- [转载]C++中声明与定义的区别
C++学了这么多年你知道为什么定义类时,类的定义放在.h文件中,而类的实现放在cpp文件中.它们为什么能够关联到一起呢?你知道什么东西可以放在.h文件中,什么不能.什么东西又可以放在cpp文件中.如果 ...
- cocos2d-x 获取当前播放第几帧最高效的方法
前言 把互联网翻了个遍, 所有的方法都千篇一律. 用循环去判断! 很神奇的是, 几乎所有博文举的例子, 连数字都是一样的. 这么一个效率烂成渣的方法, 居然被普遍赞同. 以下是广为流传的方法. ; i ...
- 【USACO 1.1.4】破碎的项链
[题目描述] 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N<=350),珠子是随意安排的.这里是 n=29 的二个例子: 1 2 ...
- Spring依赖注入的三种方式
看过几篇关于Spring依赖注入的文章,自己简单总结了一下,大概有三种方式: 1.自动装配 通过配置applicationContext.xml中的标签的default-autowire属性,或者标签 ...
- OOCSS学习(二)
OOCSS —— 面向对象CSS 5.CSS团队精神:CSS最佳团队开发 在本文中,你将学习书写CSS的最佳实践来帮助你避免不一致和冗余;实际上,这样制定标准,简化了团队开发的工作. 1)结构化 (根 ...
- Python 网路编程读书笔记x UDP
UDP 协议基础 在IP网络层,所有的数据包会向一个指定的主机传输 Source IP -> Destination IP 但是两台机器之间可能有许多独立的应用需要进行通信,因此为了区分不同的 ...
- jquery-object.js
/** * jQuery.query - Query String Modification and Creation for jQuery * Written by Blair Mitchelmor ...
- iOS开发网络篇-JSON文件的解析
一.什么是JSON数据 1.JSON的简单介绍 JSON:是一种轻量级的传输数据的格式,用于数据的交互 JSON是javascript语言的一个子集.javascript是个脚本语言(不需要编译),用 ...
- iOS获取当前app的名称和版本号-by
NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary]; CFShow(infoDictionary); // ap ...