VS2008中開發(fā)手持終端程序_第1頁
VS2008中開發(fā)手持終端程序_第2頁
VS2008中開發(fā)手持終端程序_第3頁
VS2008中開發(fā)手持終端程序_第4頁
VS2008中開發(fā)手持終端程序_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、VS2008中開發(fā)手持終端程序(PDA手機軟件)的項目總結1程序結構程序中包括四個部分:1.系統(tǒng)配置這個部分用來配置系統(tǒng)中的相關參數(shù),參數(shù)包括數(shù)據(jù)庫信息和串口的配置信息。這部分的主要技術是XML文件的讀取和寫入。2.數(shù)據(jù)下載從數(shù)據(jù)庫中下載數(shù)據(jù)到PDA,PDA上的保存也是使用數(shù)據(jù)庫。這部分的技術主要是PDA設備上的移動數(shù)據(jù)庫開發(fā)和使及用PDA連接PC數(shù)據(jù)庫3.數(shù)據(jù)上傳把PDA上的數(shù)據(jù)上傳到PC數(shù)據(jù)庫中,使用的技術和2相同。4.GPS數(shù)據(jù)獲取通過外置藍牙GPS模塊獲取當時所在位置的經(jīng)緯度,并將經(jīng)緯度保存在PDA上的移動數(shù)據(jù)庫中。涉及到的技術有串口數(shù)據(jù)的讀取,GPS數(shù)據(jù)的解析。2 開發(fā)環(huán)境軟件環(huán)境:

2、 Visual studio 2008PC數(shù)據(jù)庫: sql server智能設備: Windows Mobile 63 建立工程3.1 建立項目建立工程的過程和VS建立其他工程步驟相同,通過vs2008中的菜單“文件新建項目 ”,建立一個新項目。VS2008已經(jīng)集成了智能設備的開發(fā)環(huán)境,根據(jù)開發(fā)語言的不同,在不同的開發(fā)語言樹中選擇“智能設備”,下方的名稱中填寫項目名稱,點擊“確定”按鈕,就建立了一個智能設備的程序項目。3.2 建立調試環(huán)境VS2008中已經(jīng)包括了智能設備的仿真程序,編寫的程序可以通過PC機上的仿真程序進行調試,不必在PDA上逐個調試程序。建立項目后,通過菜單“項目項目屬性”中的

3、“設備”頁中設置調試內容。在下拉框中,選擇目標設備的類型。類型的選擇要根據(jù)PDA的操作系統(tǒng)進行確定,PDA上如果是中文操作系統(tǒng),請選擇“CHS”打頭的選項。具體如何選擇,請根據(jù)PDA的操作系統(tǒng)進行。如果對選項中的內容不了解,請查閱其他資料。仿真程序的選擇和設置不僅僅只有這一種方式,也可以通過VS2008中的“工具設備仿真器管理器”進行設置。3.3 繪制窗體智能設備的窗體和windows窗口的差別不是很大。在工程中選擇添加窗體后,VS中出現(xiàn)PDA屏幕模樣的模板。需要什么功能,在工具箱中把對應的控件拖到模板上即可。這部分的開發(fā)和普通的Windows程序開發(fā)沒有什么不同。不同的部分就是菜單。智能設備

4、的菜單中有缺省菜單,就是在屏幕底部有個菜單控件,可以通過增加菜單項的方式增加菜單。需要注意的是,一級菜單只能有兩個,而且設置的時候,只能先設置左邊的菜單項內容,才能設置右邊菜單項內容。控件的使用也是有嚴格限制的。VS2008中能使用的控件分布在工具箱的“所有設備控件V2”、“公共設備控件 v2”、“設備容器 v2”、“設備菜單和工具欄V2”、“設備數(shù)據(jù)V2”、“設備組件V2”、“設備對話框V2”。使用控件的方式和Windows窗體的設計沒有什么不同。4 調試調試程序的方式同普通的程序調試差別不大,也通過單步調試等等的功能。唯一的差別就在于調試中程序在仿真器中運行。4.1 其他文件在調試中,程序

5、如果只有一個EXE文件,而不涉及到其他文件,可以直接在仿真程序中運行。但是如果程序還有其他文件的話,需要把文件也要部署到PDA仿真器上。如何部署其他文件,請參考下面步驟:1.通過仿真器上的菜單“文件配置”菜單設置共享文件夾。通過后面的按鈕,瀏覽電腦中的磁盤,并選擇恰當?shù)哪夸??!肮蚕砦募A”在設置完成后,將作為PDA仿真器的擴展存儲空間,仿真器中共享文件夾被命名為“Storage Card”。那么在仿真器中就可以直接操作共享文件夾中的文件。這時候,就可以把其他和程序相關的文件拷貝到需要的地方。下面以一個XML文件為例。這個XML和程序的可執(zhí)行程序在一個目錄下,用來保存程序的設置參數(shù)。XML文件在

6、電腦上,程序中通過讀取可執(zhí)行程序所在的目錄來指定XML文件的目錄。但是很不幸,仿真器在運行過程中,認為EXE可執(zhí)行程序在“program files/項目名稱”這個目錄下,這個目錄是仿真器中的路徑,肯定是不會找到XML文件的。這就需要把XML文件也放置到“program files/項目名稱”目錄下面去。在仿真器中點擊“開始資源管理器”,打開后選擇“Storage Card”。在這個里面通過目錄文件的方式選中文件,然后點擊下面的“菜單編輯復制”,將文件復制出來。然后通過仿真器界面上的文件目錄功能,找到“我的設備program files項目名稱”,進入以項目名稱為名稱的目錄,通過“文件編輯粘帖

7、”,把文件拷貝到可執(zhí)行程序所在的運行目錄下。5 移動數(shù)據(jù)庫在這個項目中,使用的是微軟的SQL SERVER Mobile Compact Editor 3.5。其他的數(shù)據(jù)庫還沒有使用過。僅僅就SQL SERVER Mobile Compact Editor 3.5的使用方法說明。5.1 獲得SQL SERVER Mobile Compact Editor 3.5SQL SERVER Mobile Compact Editor 3.5可以直接從微軟的網(wǎng)站上下載,網(wǎng)址為:下載后在電腦上進行安裝。默認安裝到C:/Program Files/Microsoft SQL Server Compact E

8、dition下。3.5版本為最新版,增加了設置數(shù)據(jù)庫文件密碼的功能。也可以使用其他版本的SQL SERVER MOBILE替代。5.2 在SQL SERVER MANAGER STUDIO中使用SQL SERVER MOBILE在登錄部分,服務器類型選擇“SQL SERVER MOBILE”,數(shù)據(jù)庫文件通過下拉框中的“瀏覽更多”選擇建立的數(shù)據(jù)庫文件,也可以通過選擇窗體中的“新建數(shù)據(jù)庫”建立新的數(shù)據(jù)庫。輸入數(shù)據(jù)庫密碼,即可登錄到SQL SERVER MOBILE數(shù)據(jù)庫中。需要說明的是,3.5版本建立的數(shù)據(jù)庫,在SQL SERVER MANAGE STUDIO 2005中可能無法登錄。5.3 Sq

9、l server mobile數(shù)據(jù)庫中建立數(shù)據(jù)表Sql server mobile中建表可以通過sql server manage studio 2005中的建表向導進行建表,也可以通過sql語句進行建表。建表的時候需要注意字段類型和sql server中的字段類型并不相同,在sql server中能使用的字段類型,在sql server mobile中可能無法使用,在建表的過程中需要注意這點。5.4 在智能設備上部署sql server Mobile數(shù)據(jù)庫把建好的數(shù)據(jù)庫文件通過4.1中描述的方式,拷貝到相應的仿真器目錄下。這時候仿真器就可以連接并操作SQL SERVER MOBILE數(shù)據(jù)庫了

10、。但是如果使用PDA訪問SQL SERVER MOBILE,注意Windows Mobile中不包含數(shù)據(jù)庫引擎,需要額外的安裝四個包。如果不安裝這四個包,程序將無法連接和讀取SQL SERVER MOBILE數(shù)據(jù)庫。這四個包在sql server mobile安裝目錄下,具體的是C:/Program Files/Microsoft SQL Server Compact Edition/v3.5/Devices/wce500/armv4i目錄下面,包括:sqlce.dev.CHS.ppc.wce5.armv4i.CABsqlce.ppc.wce5.armv4i.CABsqlce.repl.ppc

11、.wce5.armv4i.CABsqlce.wce5.armv4i.CAB將這四個文件拷貝到仿真器上,并安裝。安裝后,PDA的程序中增加了三個程序: sqlservercompact 3.5 ReplSqlserverCompact 3.5 Tools CNSqlserverCompact 3.5 Core當不用移動數(shù)據(jù)庫時,可以卸載這三個程序。6 智能設備連接操作PC數(shù)據(jù)庫智能設備操作PC數(shù)據(jù)庫,有兩種方式:一種是通過無線連接,一種是通過USB連接到電腦上。無線連接在普通環(huán)境下使用普遍性不足,很多情況下是通過USB數(shù)據(jù)線進行連接的。使用USB數(shù)據(jù)線連接,PC電腦上需要安裝同步工具,目前使用較

12、多的為微軟的ActiveSync,下載地址是;智能設備和PC同步后,就可以把智能設備看作一臺電腦,可以連接數(shù)據(jù)庫。7 數(shù)據(jù)庫連接字符串7.1 Sql server mobile在工程中增加引用,引用System.data.sqlserverCe類中使用命名空間:System.data.sqlserverCe數(shù)據(jù)庫鏈接類名、命令類名及記錄集類名中都使用包含Ce的類。具體代碼如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawi

13、ng;using System.Text;using System.Windows.Forms;using System.Data.SqlServerCe;using System.Data.SqlClient;namespace GPSDataReaderpublic partial class frmDamUp : FormSqlCeConnection ConnMobile;SqlCeCommand command;public frmDamUp()InitializeComponent();private void frmDamUp_Load(object sender, EventA

14、rgs e)/獲取可執(zhí)行程序所在目錄和數(shù)據(jù)庫文件string sFilePath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase) + ""/連接sql server Mobile數(shù)據(jù)庫的連接字符串string ConnStr = "Data Source=" + sFilePath + "Persist Security Info=False;password=admin;"/

15、建立鏈接ConnMobile = new SqlCeConnection(ConnStr);tryConnMobile.Open();catch (Exception ex)MessageBox.Show("不能正確連接移動數(shù)據(jù)庫!" + ex.Message);this.Close();command = new SqlCeCommand();command.Connection = ConnMobile;string sqlstr = "select * from DamInfo where IsUP='1'"command.Comm

16、andText = sqlstr ;SqlCeDataReader rs = command.ExecuteReader();while (rs.Read()ListViewItem lv_Item = new ListViewItem();lv_Item.Text = rs"RSID".ToString();lv_Item.SubItems.Add(rs"RSNM".ToString();lv_Item.SubItems.Add(rs"DMPRV".ToString();lv_Item.SubItems.Add(rs"DM

17、CT".ToString();lv_Item.SubItems.Add(rs"DMTW".ToString();lv_Item.SubItems.Add(rs"EL".ToString();lv_Item.SubItems.Add(rs"NL".ToString();lv_Item.SubItems.Add("未上傳");lv_DamInfo.Items.Add(lv_Item);rs.Close();if (lv_DamInfo.Items.Count = 0)MessageBox.Show("

18、;沒有需要上傳的數(shù)據(jù)!");this.Close();7.2 智能設備連接PC上的SQL SERVER智能設備不支持OLEDB連接方式,只能使用SQLSERVER .Net的連接方式。所以增加System.data.SqlClient引用。在需要連接的類中增加System.data.SqlClient命名空間。代碼如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;usi

19、ng System.Windows.Forms;using System.Data.SqlServerCe;using System.Data.SqlClient;private void b_Down_Click(object sender, EventArgs e)string sqlstr;string Connstr = "user id=sa;password=2centit13;initial catalog=DamBase;Server=" + ConfigInfo.IP + "Connect Timeout=30"SqlConnectio

20、n Conn = new SqlConnection(Connstr);tryConn.Open();catch (Exception ex)MessageBox.Show("無法連接到指定的PC數(shù)據(jù)庫!" + ex.Message);return;C#最簡單最完整的webservice實例  我做java,但最近接觸crm所以必須研究一下C#中的webservice以備后用,其實就是個新手,哈哈,這個實例是我在參考了網(wǎng)上諸多不完整的例子的情況下,自己摸索完成的。期間遇到過一系列的棘手的問題,經(jīng)過個人努力終于解決了。我把整個步驟都寫完整了,以供以后像我這樣的C#新

21、手少走彎路,程序很簡單,過程有點長,希望有耐心,對于入門還是有些幫助的。如果博客中沒附上源碼的【原因可能沒法添加源碼】,可以留言或郵箱我來發(fā)送給大家。   一、環(huán)境 我的開發(fā)環(huán)境是xp的sp3,這個對于的要求是v2.0.50727 如果不是的話會報錯,可以到本地的C:WINDOWSMicrosoft.NETFrameworkv2.0.50727aspnet_regiis.exe -i運行即可。如果自己的已經(jīng)安裝過的就可以跳過,否則在webservic的調試中會報一下錯:名稱以無效字符開頭。處理資源 'http:/localhost/ws/Service.asmx&#

22、39; 時出錯。第 1 行,位置: 2 其次,需要安裝IIS,我測試的版本是iis5.1, 本來裝了iis6 但是用不了,所以版本也很重用,本人在次耗費了部分心血。如果不清楚版本可以看看 百科里的描述以作決定的參考:  二、程序這個過程總共建立2個獨立的項目: 一個webservice 項目,一個調用。 1 建立和部署webservice 項目: 用vs2008新建webservicesT :注意是ASP.NET Web 服務應用程序   之后系統(tǒng)會自動生成一個 類似于helloworld的一個簡單例子: 打開之后,可以看到 至此最簡單的webservice就建立

23、好了。 我們不需要做任何事情,就用他來測試。   接著需要對整個工程 “生成”和發(fā)布。 生成 只要右鍵點擊項目選擇“生成”即可。發(fā)布也一樣,如下截圖。   把發(fā)布的文件拷到iis工作路徑中,并把這個文件夾 “web共享”。 在資源管理器中: web共享:  在iis中查看,我建的文件名為sv:    最后來查看一下是不是部署成功,可以在ie地址欄中輸入相關的url: 我涉及的url http:/localhost/sv/Service1.asmx 成功的話可以看到下面的截圖 然后點擊 “HelloWorld”鏈接 : 

24、60;然后點擊 “HelloWorld”鏈接 ,就可以最終的頁面顯示的xml內容: 這樣表示整個webservice的建立和部署是成功的。      2 接下來建立 對webservice的調用調試。 我是建立了一個web應用項目來調用測試的。 步驟跟建立webservice項目類似, 注意選擇好類型如圖:  其次,最重要的一步就是引用webservice , 項目右鍵選擇“添加web引用”,可以看到下圖:   填入之前建立的webservice 對應的url ,此處是 http:/localhost/sv/Service1

25、.asmx 點擊前往即可: 然后 把往“Web引用名”中填入一個名字,我填的是kiss,這個名字比較重要,因為下面的步驟中要使用他,當然你可以任意,但請記住。 然后 在后臺中寫入調用的方法 頁面也加入觸發(fā)事件: 后臺代碼:using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlC

26、ontrols;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;  namespace wbcall public partial class _Default : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) public string GetString() kiss.Service1 n = new kiss.Service1(); stri

27、ng ss = n.HelloWorld(); return ss;  前臺代碼: <% Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="wbcall._Default" %> <!DOCTYPE html PUBLIC "-/W3C/DTD XHTML 1.0 Transitional/EN" "/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論