`
mmdev
  • 浏览: 12880365 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

WTL初学者_第一个Pocket PC程序

阅读更多

有朋友在我上一篇Blog里留言,说WTL 7.5已经支持VS.NET 2005开发Windows Mobile应用程序了。今天正好有空,所以就从http://sourceforge.net/projects/wtl/下载了一个WTL 7.5。我下载的版本是WTL 7.5.5160.0,发布日期是200569日。大家也可以下载一个,自己玩玩。

好了,废话少说,开始我们编写第一个Pocket PC上的WTL应用程序的旅程吧。我是在VPC下做开发的,开发环境是Windows Server 2003Visual Studio 2005 Beta 2WTL 7.5

把下载文件解压后,拷贝到C盘根目录下。确认你的VS.NET 2005已经安装好了,并且没有处于运行状态。分别执行AppWizAppWizCE文件夹下的setup80.js

安装完成后,重新打开VS.NET 2005。我们会发现在Visual C++节点下面会多出一个WTL的项目。我们选择WTL项目,里边会有两个项目,分别是WTL for Windows项目和WTL for CE项目。WTL for Windows项目在前边的文章里介绍过了,这次我们来写WTL for CE的应用程序。

<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"></shapetype><stroke joinstyle="miter"></stroke><formulas></formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f><lock aspectratio="t" v:ext="edit"></lock><shape id="_x0000_i1025" style="WIDTH: 414.75pt; HEIGHT: 278.25pt" type="#_x0000_t75"></shape><imagedata o:title="wtlce_create" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image001.jpg"></imagedata>

选中项目,然后填写项目名称,点OK,进入项目生成向导。

<shape id="_x0000_i1026" style="WIDTH: 414.75pt; HEIGHT: 290.25pt" type="#_x0000_t75"></shape><imagedata o:title="wtlce_wizard1" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image003.jpg"></imagedata>

第一个界面是欢迎界面,没什么可说的。

<shape id="_x0000_i1027" style="WIDTH: 414.75pt; HEIGHT: 289.5pt" type="#_x0000_t75"></shape><imagedata o:title="wtlce_wizard2" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image005.jpg"></imagedata>

第二个界面用来选择开发平台,因为没有安装Windows Mobile 5SDK,所以这里只有Windows Mobile 2003的两个选项可以选择。这里的设置和使用MFC开发Windows Mobile设备的向导是类似的。

<shape id="_x0000_i1028" style="WIDTH: 415.5pt; HEIGHT: 291pt" type="#_x0000_t75"></shape><imagedata o:title="wtlce_wizard3" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image007.jpg"></imagedata>

第三个页面是选择应用程序的形态。第一组选项是选择主界面是单文档类型、多线程单文档类型还是对话框类型,我们默认选择SDI。下边的选项分别选择,是否使用Smartphone类型的菜单、是否只允许一个进程运行,是否成为ActiveX控件的宿主程序,是否创建为COM服务器等。我们选择默认形式。

<shape id="_x0000_i1029" style="WIDTH: 415.5pt; HEIGHT: 291pt" type="#_x0000_t75"></shape><imagedata o:title="wtlce_wizard4" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image009.jpg"></imagedata>

最后一个界面也是选择视图窗体的类型,我们选择默认窗体。点击完成。

<shape id="_x0000_i1030" style="WIDTH: 238.5pt; HEIGHT: 333.75pt" type="#_x0000_t75"></shape><imagedata o:title="wtlce_solution_view" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image011.jpg"></imagedata>

项目生成之后,我们看到的解决方案窗体中包括上面列出的文件,和WTL for Windows是大体类似的。类视图如下:

<shape id="_x0000_i1031" style="WIDTH: 237pt; HEIGHT: 330.75pt" type="#_x0000_t75"></shape><imagedata o:title="wtlce_class_view" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image012.jpg"></imagedata>

在打开资源视图时会碰到一个错误,报告一个.H头文件找不到。于是想起WTL还没有被加入到编译路径中。

<shape id="_x0000_i1032" style="WIDTH: 414.75pt; HEIGHT: 227.25pt" type="#_x0000_t75"></shape><imagedata o:title="wtlce_include" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image013.jpg"></imagedata>

我们选择Tool菜单下的Options菜单项。在Options对话框中我们选择”Projects and Solutions”下的”VC++ Directories”。在平台选项里选择”Pocket PC 2003”,显示目录里选择”Include files”,然后在下边的编译路径中添加WTL 7.5Include目录就可以了。然后我们再把Smartphone 2003下的编译路径中加入WTL路径就可以了。

再次返回主界面,我们就可以正常查看资源视图了。

<shape id="_x0000_i1033" style="WIDTH: 240.75pt; HEIGHT: 333.75pt" type="#_x0000_t75"></shape><imagedata o:title="wtlce_resource_view" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image015.jpg"></imagedata>

在查看完资源视图后,我们就可以编译并运行WTL程序了。我们选择Pocket PC 2003模拟器作为发布平台,点击运行。

<shape id="_x0000_i1034" style="WIDTH: 256.5pt; HEIGHT: 402pt" type="#_x0000_t75"></shape><imagedata o:title="wtlce_runapp" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image016.jpg"></imagedata>

上图是运行之后点击菜单之后的效果。大家可以看到,对话框还保留着一个X按钮,这和Pocket PC的风格是不相符的,但在WINCE下是允许的。

个人感觉,使用WTL开发Pocket PC上的应用程序并不比使用MFC来得复杂,可是WTLMFC要小很多,而且不需要支持库。这些特性对于一些轻量级的应用程序开发是相当吸引人的。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics