实例讲解PDA入门开发的过程,附代码

实例讲解PDA入门开发的过程,附代码 本程序为PDA 入门开发的一个小示例,希望对大家有所帮助,基于mobile5.0的PPC开发,使用语言C#,我的机器的环境:windows 2003(E),SQL2005(E),VS2005(E) --------------------------首先安装环境--------------------- 一个模拟器,和链接PDA的工具 1 Microsoft ActiveSync 4.2.exe --PDA中使用的数据库 2 sqlce30setupen.msi—版本ce3.0,cf2.0 SSCE31SDK-CHS1.msi --PPC开发工具的SDK 3 Windows Mobile 5.0 Pocket PC SDK2.msi --3的汉化 4 Windows Mobile 5.0 Emulator Images for Pocket PC - CHS3.msi --pda中安装的数据库sqlce,安装文件必须是cab的,否则不能识别 5 sqlce30.ppc.wce4.armv4.CAB --路径:C:/Program Files/Microsoft SQL Server Compact Edition/v3.1/SDK/bin/Client/v2.0/wce500/armv4i --------------------------------配置开发环境----------------------- 1 Tools->Device Emulaor Manager (1)默认选择:Pocket Pc 2003 SE Emulaor 右键->connection之后cradle (2)安装mobile5.0后选择:CHS Windows Mobile5.0 Pocket Pc Emulaor 右键->connection之后cradle 2 弹出Synchronization Setup Wizard 一直next 将链接上模拟的PDA -----------------------------创建winform项目---------------------- File -> new ->project->Visual c#->Smart Device->PPc2003->Device Application --------------------------小测试---------------------- (1)放一个button就可以在PDA中看见效果了 (2)如果是Web的测试程序,在PDA的IE中输入 http://192.168.0.114/localhost/website/defualt.aspx ----------------------------数据库的配置与基本使用--------------------- --SQL Server Mobile 学习: --通过VS2005 创建和连接及操作SQL Server Mobile 数据库 a. 在项目外创建SQL Server Mobile数据库 b. 在项目内创建SQL Server Mobile数据库 c. 连接SQL Server Mobile数据库 d. 操作SQL Server Mobile数据库 ================================ a. 在项目外创建数据库 ---------------------- (1).在“视图”菜单上单击“服务器资源管理器”。 (2).右击“数据连接”,然后单击“添加连接”,打开“添加连接”对话框。 (3).单击“更改”,打开“更改数据源”对话框。 (4).在“数据源”框中,选择“Microsoft SQL Server Mobile Edition”, 然后单击“确定”。 (5).选择“Microsoft SQL Server Mobile Edition”,然后单击“确定”。 b.在项目内创建数据库 --------------------- (1).打开一个项目后,在“数据”菜单上单击“添加新数据源”。 将打开“数据源配置向导”。 (2).在“选择数据源类型”页上,选择“数据库”,然后单击“下一步”。 (3).在“选择您的数据连接”页上单击“新建连接”,打开“添加连接”对话框。 (4).单击“更改”,打开“更改数据源”对话框。 (5).选择“Microsoft SQL Server Mobile Edition”,然后单击“确定”。 c.连接数据库 ------------- 以下步骤呈接上面的a或b (1).在“添加连接”对话框中,选择“我的电脑”。 (2).单击“创建”。 (3).在“创建新的SQL Server 2005 Mobile Edition 数据库”对话框中, 键入新数据库的完全限定路径,如“c:/MyDB”。 (4).在“新密码”和“确认密码”框中键入新数据库的密码(如“MyPassword”), 然后单击“确定”。 (5).在“添加连接”对话框中,单击“测试连接”以确保已建立连接。 出现一条消息指示测试连接成功。 注意SQL Server Mobile 不支持在网络共享上打开数据库文件。 (6).单击“确定”,返回到“添加连接”对话框, 然后单击“确定”关闭该对话框。 (7).在“选择您的数据连接”页上,选择“是,在连接字符串中包含敏感数据”。 (8).单击“下一步”。 出现“本地数据库文件”消息框,询问是否要在当前项目中包括数据文件。 单击“是”。 (9).在“选择您的数据库对象”页上,选择要在项目中包含的表或其他对象。 (10).单击“完成”。 d. 操作SQL Server Mobile数据库 ------------------------- 这时通过在“数据”菜单上单击“显示数据源”, 可以在“数据源”窗口中将新数据库作为数据集进行查看。 后续的操作可以通过单击某项的右键来进行 ----------------------程序代码-------------------- 前台:一个dataGrid,一个button,一个Text 后台如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; //添加SqlServerCe引用后,引入此空间 using System.Data.SqlServerCe; using System.IO; namespace PDAconnection { public partial class Form1 : Form { public Form1() { //DGdemo InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { this.createDatabase(); this.insertData(); SqlCeConnection scn = new SqlCeConnection("DataSource=mysdf.sdf"); SqlCeDataAdapter sada = new SqlCeDataAdapter("select * from pc", scn); DataTable dt = new DataTable(); sada.Fill(dt); this.DGdemo.DataSource = dt; } private void getData() { } private void insertData() { //string strno = "test"; //string xh = "me"; //string werks = "liu"; //string pc_date = DateTime.Now.ToString(); for (int i = 0; i < 6; i++) { SqlCeConnection myconn = new SqlCeConnection("DataSource=mysdf.sdf"); SqlCeCommand com = new SqlCeCommand("insert into pc(pcno ,xh,werks,pc_date) values(" + "'2'," + "'ad'," + "'adf'," + "'2001-01-01'" + ")"); myconn.Open(); com.Connection = myconn; com.ExecuteNonQuery(); myconn.Close(); } } private void createDatabase() { //创建数据库 try { if (File.Exists("mysdf.sdf")) { MessageBox.Show("database is exists deleteing"); File.Delete("mysdf.sdf"); } else { SqlCeEngine eng = new SqlCeEngine("DataSource=mysdf.sdf"); eng.CreateDatabase(); eng.Dispose(); MessageBox.Show("create database success"); } Boolean rtu; rtu = CreateTable(); if (rtu == false) { MessageBox.Show("database have already existe!"); } else { MessageBox.Show("cretae database success!"); } } catch (Exception ex) { MessageBox.Show("create database fail " + ex.ToString().Substring(1, 60)); } } private Boolean CreateTable() { try { SqlCeConnection myconn = new SqlCeConnection("DataSource=mysdf.sdf"); SqlCeCommand com = new SqlCeCommand("create table PC (PCNO NVarChar(10) primary key,XH NVarChar(10) NOT NULL,WERKS NVarChar(4) NOT NULL,PC_DATE NVarChar(10))"); myconn.Open(); com.Connection = myconn; com.ExecuteNonQuery(); myconn.Close(); MessageBox.Show("create database success!"); return true; } catch (Exception ex) { MessageBox.Show("create database faile" + ex.ToString().Substring(1, 60)); return false; } } private void button1_Click(object sender, EventArgs e) { textBox1.Text = "ok...good"; } private void Form1_KeyDown(object sender, KeyEventArgs e) { if ((e.KeyCode == System.Windows.Forms.Keys.Up)) { // Rocker Up // Up } if ((e.KeyCode == System.Windows.Forms.Keys.Down)) { // Rocker Down // Down } if ((e.KeyCode == System.Windows.Forms.Keys.Left)) { // Left } if ((e.KeyCode == System.Windows.Forms.Keys.Right)) { // Right } if ((e.KeyCode == System.Windows.Forms.Keys.Enter)) { // Enter } } } }  

你可能感兴趣的:(==项目开发==)