AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > VC编程

你会编写Windows CE应用程序吗?

51自学网 2015-08-30 http://www.wanshiok.com

 

3-2.用户界面

Windows CE机器和桌面系统的最大差别就在于用户界面。

显示器是关键之一。Windows CE机器中显示器通常很小,而且分辨率也不高。尽管一些机器有彩色显示器,但是还有很多只支持灰度图像。因此,对于那些显示器无法表示的信息(如高分辨率图像信息)来说,你需要自行开发一种方法来传达给客户。

另一个关键的用户界面的组成部分是指点设备,它让用户能够与用户界面中的很多元素交互。尽管Windows CE机器中没有鼠标,但很多Windows CE机器都拥有触摸屏以及手写笔等类似于鼠标的指点设备。但是还有一些Windows CE界面根本没有这些设备,它们依赖于其它技术进行导航,比如方向键,另外还有一些革新式的交互方式,比如语音导航。

还有一个需要注意的地方就是Windows CE机器不可能配备键盘,即使有虚拟键盘,也很难操作,因此在编写应用程序过程中,尽量让用户少用键盘录入信息。

3-3.应用程序编程接口(API)

Windows CE是32位操作系统,它不支持任何16位函数,还有一些32位函数没有完全被实现。同时, Windows CE支持并扩展了一些Win32 API的子集。

另外,Windows CE支持了COM/OLE的一部分,你可以重用使用COM/OLE、MFC或ATL的应用程序代码,再作一些微小的修改即可。

3-4.Windows CE字符集

Windows CE像Windows NT一样,是Unicode环境。尽管Windows CE支持ASCII功能来进行文件交换,但是Windows CE的本地文本格式是Unicode。下面列出了将基于ASCII的代码转换到基于Unicode代码的注意事项:

在程序中包含tchar.h头文件。该文件包含所有必要的转换。

使用Win32字符串函数,而不要使用C运行库中等价的函数。

使用TCHAR或者LPTSTR来声明字符串变量。使用TCHAR声明字符串变量的代码既能够作为基于Unicode代码编译,又能够作为基于ASCII代码编译。

使用Text宏来表示字符串,比如Text("a string")。使用Text宏的优点在于:当使用UNICODE编译标志编译时,该字符串作为Unicode代码被编译;当使用ANSI编译标志编译时,该字符串又可以作为ASCII代码被编译。

使用sizeof(TCHAR)操作符来确定你的代码对于Unicode和ASCII都有效。当你增加指针时,记住ASCII字符是单字节的,但是Unicode字符则是双字节的。

四、调试和测试Windows CE应用程序

一组有效的调试工具能够缩短调试周期,并使你能够容易的判断出问题所在。Windows CE IDE提供了一组仿真和远程调试工具,以及一些特别的调试工具。

4-1.桌面仿真调试和测试

Windows CE开发工具包中的桌面仿真工具让你能够在任何一台运行Windows NT的机器上编写并调试Windows CE应用程序,而不必把它们下载到Windows CE机器上。你甚至可以使用仿真器来编写一个Windows CE应用程序,而根本用不到Windows CE机器。但是,尽管你能够在仿真器上判断你的应用程序的很多性能和表现情况,最终,当你的应用程序在仿真环境中正常运行之后,你应当把它们下载到目标设备中做作后的测试和评估。根据鄙人的开发经验,在Windows CE机器上运行的效果与Windows NT上的运行效果还有很多不同,大部分情况是:更慢了。

测试时,除了测试应用程序的缺点和稳定性之外,程序的易用性也十分重要,因为大多数Windows CE机器仅有一个小的桌面区域作为访问设备,这将带来很多意想不到的问题。



4-2.远程调试和测试

除了仿真器之外,Windows CE还提供了一些工具,让你能够在应用程序运行时检测它们的性能。这些远程工具在下表中列出:


为了使用远程工具,你必须首先用一根标准串行缆线将你的台式机与掌上机相连接。

4-3.非标准调试和测试

如果你正在开发Windows CE平台上的软件,你可以使用Windows CE仿真环境以及远程工具来调试和测试你的应用程序。但是,如果你正在为其它基于Windows CE的嵌入系统开发应用程序时,你就需要自行设计测试和调试工具。幸运的是,Windows CE API提供了所有必要的编写调试器的函数。由于编写调试器比较复杂,本文暂不深究,以后有机会单独讨论该问题。



五、小结

Windows CE正在被很多人接受,而Windows CE上的应用程序还比较少,因此Windows CE应用程序将在一定时间和范围内具有不少潜力和市场。尤其是Windows CE上的网络编程有可能成为热点。

编写Windows CE应用程序一定要"惜墨如金",提高代码运行效率。

测试Windows CE应用程序时,务必在Windows NT上测试比较成熟之后再下载到Windows CE上,过多的安装/卸载和在Windows CE机器上运行低效的应用程序有可能降低系统速度。

 
 
说明
:本教程来源互联网或网友上传或出版商,仅为学习研究或媒体推广,wanshiok.com不保证资料的完整性。

上一篇:一个功能强大的MFC界面处理扩展库:CJ60Lib  下一篇:在VC中用CMenuXP使应用程序拥有Office XP风格的界面