三味中国, china3view

通过语言了解文化,通过游历增强体验. Language, Travel and Experience........      

« Google Earth常用网站(转)用Delphi2005开发 PocketPC程序入门指南(转) »

如何使用Delphi 2006學習.NET Compact架框的開發(转)

Word 文稿下载地址(包括完整的文字和图片):http://www.china3view.com/blog/upload/ppcwithDelphi.doc

(原文为繁体,WORD文件已经转为简体,由于图片较多,这里只选择其文字部分。

全文转自:http://gordonliwei.spaces.live.com/blog/cns!CCE1F10BD8108687!376.entry

12月初在上海发表Delphi 2006时David I.展示了一个使用Delphi 2006开发Windows Mobile的范例,当时就有参加的朋友向我索取这个范例,但是经我向David要这个范例,David并没有给我。恰巧前几日我翻译了David Clegg先生有关使用Delphi 2005开发.NET Compact Framework应用程序的文章,由于那篇文章中是讨论如何使用Delphi 2005开发,而Delphi 2206开发.NET Compact Framework应用程序简单多了,因此我心中想干脆写一篇如何使用Delphi 2006的文章好了,以便让有兴趣的朋友能够开始使用Delphi 2006来尝试.NET Compact Framework应用程序的开发。
 
Delphi 2006的编译器已经包含了Delphi .NET Compact的预览版编译器,因此Delphi 2006的开发人员可以直接使用即可编译。使用Delphi 2006编译器开发.NET Compact架框应用程序的流程是:
 
1.      在Delphi 2006中建立一个Windows forms应用程序项目
2.      到命令列窗口中使用编译器指令把Windows forms应用程序项目编译成.NET Compact架框应用程序
3.      由于Windows forms应用程序中有一些类别,特性和方法没有实作在.NET Compact架框中,因此第2个步骤会产生编译错误,开发人员可以回到Delphi IDE中使用注释的方式移除.NET Compact架框不支持的类别,特性和方法
4.      再次使用Delphi 2006编译修改过的项目即可成功产生.NET Compact架框的应用程序
5.      启动Window CE仿真器执行步骤4产生的应用程序,如果有问题再回头修改程序代码
6.      部署到真正的Win CE/Pocket PC或是SmartPhone执行您的.NET Compact架框的应用程序
 
在下面的内容中我们详细的说明。
步骤 1 设定开发环境
在开始开发.NET Compact架框应用程序之前,您可能需要先设定好基本的开发环境,下载并且安装开发.NET Compact架框需要的仿真器以及您的移动设备需要的.NET Compact架框执行环境。
 
首先您可以在下面的URL下载到WinCE 5.0的仿真器,您最好下载中文化的版本并且安装到您的计算机之中。
http://www.microsoft.com/downloads/details.aspx?FamilyID=EEC33AE3-C129-4C25-ABAA-18E8E842178F&displaylang=en&Hash=LKRJXV6
 
接着您可以在下面的URL下载到您使用的Windows Mobile设备需要的.NET Compact Framework 1.0 SP3 Redistributable安装程序:
http://www.microsoft.com/downloads/details.aspx?familyid=a5a02311-194b-4c00-b445-f92bec03032f&displaylang=en
下载并且执行上面的.NET Compact Framework 1.0 SP3 Redistributable安装程序,它就可以藉由ActiveSync把.NET Compact架框安装到您的WinCE/Pocket PC/SmartPhone上,如此一来就可以执行.NET Compact架框的应用程序了。
步骤 2 建立Delphi.NET Windows Forms应用程序项目
由于目前Delphi 2006还没有提供可视化设计.NET Compact架框应用程序的功能,因此我们目前只能使用Windows Forms项目提供的可视化设计能力,之后再使用Delphi编译器转换为.NET Compact架框应用程序。
 
因此请在Delphi 2006 IDE中先建立一个Windows Forms应用程序项目:
 
接着使用可视化窗体设计家设计.NET Compact架框应用程序的图形使用者接口,例如在这个范例中我在窗体中使用了一个TextEdit,一个Button以及一个Label控件:
 
接着我在Button控件的Click事件处理函式中撰写如下的程序代码:
procedure wfmMain.btnClickMe_Click(sender: System.Object; e: System.EventArgs);
begin
  Self.tbMsg.Text := '这是由Delphi 2006开发的!';
end;
 
并且在窗体的Activate事件处理函式中撰写如下的程序代码:
procedure wfmMain.TWinForm13_Activated(sender: System.Object; e: System.EventArgs);
begin
  Self.lblVersion.Text := Environment.Version.ToString;
end;
 
TWinForm13_Activated事件处理函式会在Label控件中显示使用的.NET架框的版本信息。
 好了,这只是是很简单的.NET应用程序,接下来要讨论的是如何把这个Windows Forms应用程序编译成.NET Compact架框的应用程序。Delphi 2006的编译器加入了一个新的编译器指令:CF,这个编译器指令可以把Delphi的项目编译成.NET Compact架框的专案。
 
要编译成.NET Compact架框的应用程序,我们需要使用Delphi 2006提供给.NET Compact架框的开发assemblies以及.NET Compact架框本身的assemblies。Delphi 2006在它的lib\cf目录下提供了Borland给.NET Compact架框的assemblies,而.NET Compact架框本身的assemblies则可以在VS.NET 2003的Windows CE目录下找到,当然您也可以去MS网站下载.NET Compact架框的开发人员版本,例如下图是笔者机器中VS.NET 2003的Windows CE目录,它位于笔者的D:\Program Files\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK\v1.0.5000\Windows CE之中。
 
 
有了上面的知识之后,我们就可以撰写一个编译的批处理文件如下:
dccil -DCF PDCFDemo1.dpr -U"D:\Program Files\Borland\BDS\4.0\lib\cf" -lu"D:\Program Files\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK\v1.0.5000\Windows CE\System.dll";"D:\Program Files\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK\v1.0.5000\Windows CE\System.Windows.Forms.dll"
 
让我们把这个批处理文件储存在范例项目的目录中并且命名它为DCF.BAT。
 
现在让我们开启一个命令列窗口,并且切换到我们前面的范例项目目录之下,准备使用DCF.BAT来编译范例项目。
步骤 3 使用Delphi 2006的编译器编译Windows Forms应用程序为.NET Compact架框应用程序
如下所示,在范例项目目录中执行DCF.BAT编译我们的范例项目PDCFDemo1.dpr:
 
 
 
从上图可以看到编译器出现了许多的错误并且指出了在范例应用程序中那些行数产生了错误,我们可以看到这些错误大都是Name/TabIndex特性值的错误,这是因为.NET Compact架框没有实作这两个特性。至于SuspendLayout,AutoScaleBaseSize以及ResumeLayout方法则是没有实作在.NET Compact架框中。因此我们只需要回到范例项目的主窗体程序代码中把这些行的程序代码改成注释即可。
 
首先让我们开启范例项目的主程序,把其中的
[STAThread]
这一行改成注释,如下图所示:
 
 
接着再回到范例主窗体把命令列编译器注明错误的行数程序代码改成注释之后,再回到命令列窗口,再次执行DCF.BAT,我们就可以看到如下图所示现在已经编译成功了:
 
步骤 4 使用WinCE 5.0仿真器测试范例应用程序
如果您安装好了WinCE 5.0的仿真器,那么现在请它,如下图所示:
 
现在我们需要把刚才范例项目的目录仿真成储存卡以便让WinCE 5.0的仿真器可以找到我们的范例应用程序并且执行它。要如此做,请点选WinCE 5.0仿真器的Emulator|Folder Sharing…菜单,如下所示:
 
接着在下面的对话盒中选择范例项目的目录,在笔者的机器是C:\DCFDemos\Demo1,如下所示:
 
接着执行WinCE 5.0仿真器的Windows Explorer,如下所示:
 
在Windows Explorer中浏览到储存卡,如下所示:
 
开启了储存卡目录之后就可以看到刚才范例项目所有的内容,包含了我们的范例.NET Compact架框的应用程序:
 
现在点选它就可以在WinCE 5.0仿真器中看到由Delphi 2006开发的范例.NET Compact架框的应用程序的确可以成功的执行了:
 
由于笔者安装的WinCE 5.0的仿真器是英文版,因此无法看到正确的中文。
步骤 5 拷贝Delphi.NET Compact架框应用程序到PocketPC执行
但是当笔者把Delphi 2006开发的范例.NET Compact架框的应用程序拷贝到笔者在2002年购买的Compaq iPAQ中执行时,一切都正常,中文也没有问题,当笔者第一次在笔者的Compaq iPAQ中看到这个由Delphi 2006开发的范例.NET Compact架框应用程序执行时,心中真是高兴,笔者心中知道又有很多好玩的东西可以写了。
 
最后由于笔者的拍摄技术很烂,不知道如何拍摄范例.NET Compact架框应用程序在Compaq iPAQ中执行的画面,因此无法把最后执行的画面显示出来,在此向各位抱歉(拍摄的很不清楚)。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表




推荐百度知道

推荐Babylon翻译软件

Powered By Z-Blog 1.7 Laputa Build 70216

Copyright by China3view.com. *