日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Symbol mc1000开发体验

發布時間:2024/1/1 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Symbol mc1000开发体验 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

拿到一個motorola mc1000的盤點機,本想在開發程序與普通桌面程序差不多,也可能是思維沒有轉變過來,總有種找不到出路的感覺。經過10天的摸索,終于修成正果了。現將過程記錄如下:

一、準備工作

1、? 我用的開發環境是的vs2008

2、? 下載Symbol開發包,雖然盤點機是motorola牌子的,但開發包的名稱還是叫Symbol。下載地址:https://docs.symbol.com/downloads/SMDK-M-1.07.03.exe

3、? 安裝PC機與盤點機的通信軟件Microsoft ActiveSync 4.5 中文版安裝。

二、選擇數據庫

環境安裝好了,很興奮,以為這就可以開發程序了。剛開始確實挺順利的,建個空窗體,編譯正常,還可以部署上機子上,正常運行。接下來,按照開發Windows程序的思路開始動作了。

剛開始數據庫選擇了sqlite3,也挺好用的,主要是因沒有機子,所以寫的是winform程序,讀取數據庫,保存數據都正確。結果等拿到機子后,傻眼了。機子不支持sqlite數據庫,要安裝wince版本的運行庫,試了幾個沒有成功,可能是與我用的vs2008有關。由于是新手,也不知道怎么修正,就換了microsoft推薦的sqlce數據庫。Sqlce數據庫在wince上能使用,同樣也可以開發winform程序,導出數據后,然后拷到wince上使用。本來想用文本文件然后再到wince上,再保存到sqlce數據庫中,結果發現速度太慢。

后來發現,由于商品信息格式相對固定,還不如保存到Arraylist中,然后通過二分法查找。實際測試的結果,速度還是挺快的,這是我最滿意的結果。

三、激光掃描

程序好了,讀取商品信息,保存盤點結果,一切正常。高興呀O(_)O~。拿了條碼一試,天那,不發紅光,要暈倒了。

因為剛開始不知道要安裝symbol開發包。從網上搜索motorola開發,沒有找到想要的結果,后來想到motorola收購了symbol,會不會是symbol開發呢?結果正是想要的。下載安裝,查看例子。發現寫的測試條碼掃描功能的例子,太復雜了。結果就直接用barcode控件,挺好,功能正常。繼續設置屏幕亮度,壞了,包有沖突。繼續查看例子,去掉不必要的代碼,到最后才發現,只有幾行代碼是有效的,太經典了。定義編量

private Symbol.Barcode.Reader MyReader = null;

private Symbol.Barcode.ReaderData MyReaderData = null;

初始化

private void InitRead()

??????? {

??????????? MyReader = new Symbol.Barcode.Reader();

??????????? MyReaderData =

?????? ??????new Symbol.Barcode.ReaderData(Symbol.Barcode.ReaderDataTypes.Text,

???????????? Symbol.Barcode.ReaderDataLengths.DefaultText);

??????????? MyReader.ReadNotify += new EventHandler(MyReader_ReadNotify);//定義接收事件

??????????? MyReader.Actions.Enable();

? ??????????MyReader.Actions.Read(MyReaderData);

??????? }

顯示掃描的條碼

??????? private void MyReader_ReadNotify(object sender, EventArgs e)

??????? {

??????????? txt_barcode.Text = MyReaderData.Text;

??????????? txt_barcode.Focus();

??????????? txt_barcode.Select(13, 1);

??????????? MyReaderData.Dispose();//這一句很重要,一定要釋放內存

??????????? //以下兩句話,實現連續掃碼功能

??????????? MyReaderData = MyReader.GetNextReaderData();

??????????? MyReader.Actions.Read(MyReaderData);

??????? }

到此程序完成,可以正常使用。

四、部署到盤點機

通過vs開發環境部署程序中可以看到需要安裝哪些CAB包,把這些包拷到機子上,運行,提示‘不是一效的windows ce安裝程序’,暈了。最后才發現是我拷的目錄不正確。因為機子空間太小,所以想拷到擴展卡上安裝,結果又繞了彎路,有一些包必須在系統目錄下才能安裝。

MC1000的機型應用程序的安裝需要以下幾個CAB文件:
  a) NETCFv2.wce5.armv4i.cab,這是.NET Compact Framework v2.0的一個安裝包;或者NETCFv35.wce.armv4.cab ,這是.NET Compact Framework v3.5 的一個安裝包;

b) symbol.all.arm.cab,這是SYMBOL的一個安裝包,在Symbol提供的軟件開發包中;

c) sqlce30.dev.CHS.wce5.armv4i.CABsqlce30.repl.wce5.armv4i.CABsqlce30.wce5.armv4i.CAB,這三個CAB安裝包是SQL CE數據庫必須的。如果不是有SQL CE 數據庫,則這些文件不需要安裝。
  System_SR_CHS.CAB,這是調試用到的一個安裝包,不是必須的。

.NET制作的應用程序部署到PDA上之前,必須安裝.NET Compact Framework v2.0 或者.NET Compact Framework v3.5。由實際設備項目程序開發的版本來定,也就是上面的安裝包,此外還要裝SYMBOL的一個安裝包(symbol.all.arm.cab),這些都是運行應用程序必須的環境。如果沒有用到SQL CE,則其他幾個安裝包不是必須的。

由于CAB包在安裝后,如果沒有設置為只讀,系統會自動刪除,所以就想寫一個自動調用的程序,安裝后就會刪除這些包了,那么下次就不會再安裝了,如果機子冷啟動了,就再次拷貝這些CAB包,為的是節省系統空間(勞神呀)。

startup目錄下增加installcab.run。內容類似下面內容Wceload /NOASKDEST /Application/CAB/NETCFv2.wce5.armv4i.cab,但當再次啟動時會提示找不到cab文件,不理想。

繼續查資料,發現可以在注冊表中增加啟動安裝項。在application下增加netct.reg,內容如下:

; For Windows CE .NET devices

[HKEY_CURRENT_USER/Software/Symbol/Startup/Programs/Prog14]

"Name"="/windows/wceload.exe"

"Command"="/noaskdest /Application/cab/NETCFv2.wce5.armv4i.cab"

"Continue"=dword:0

"ColdBootOnly"=dword:1

這兩種方法只有在冷啟動時才執行,因而不能滿足要求。

后來發現可以用bat文件,放在StartUP目錄下,內容類似Wceload /NOASKDEST /Application/CAB/NETCFv2.wce5.armv4i.cab,這樣每次啟動機子都會執行,也就實現自動安裝功能了。

五、其它知識

.cpy文件拷貝快捷方式命令如下例:

/application/PDlnk.lnk??? >??? /%WSM%/PDlnk.lnk
/application/PDlnk.lnk??? >??? /%WDT%/PDlnk.lnk
注:Windows System

Windows DeskTop

.cpy文件是冷啟時用來復制文件到指定目錄的命令文件。CE系統快捷方式為.lnk文件,命令行中必須使用全名(包含后綴),否則失敗。

.lnk文件直接通過ActiveSync由設備拷貝出來即可。

六、安裝程序

程序一般都很小,還要設置快捷方式,又不想做成CAB包(主要是VS2003制作CAB太不方便了),所以就采用了一種另類的方法。把程序拷到PDA中,設置好快捷方式,然后把部署需要的CAB包,及程序和快捷方式對應的目錄結構拷下來。當PDA冷啟動,數據丟失后,直接把這些文件拷到機了上,重啟一下,就會自動安裝了。

QQ:80294551

總結

以上是生活随笔為你收集整理的Symbol mc1000开发体验的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。