1、如何从开发 WinXP 应用程序快速转到 WinCE 平台前天有客户打算找一款 8 寸的工业平板电脑,并且最好是 X86 的。后来了解了他的应用,原来很简单,只是一些简单的通信,以及几个界面显示。我说,用 X86 的电脑,成本高、维护麻烦,不是很浪费吗?后来了解到他是不太熟悉 WinCE 应用开发。昨天他到我公司,看过我们 8 寸的单板电脑演示后,表示完全满足他的需求。接着,我为他演示了如何简单的建立 WinCE 程序。他也表示没有他想象中那么复杂。其实 Windows CE 与 Windows XP 都出自微软,同是“Windows” 自然有很多相似之处。最重要的还是了解他们两者的开发思想。
2、1、开发思想为了好理解,下面将开发产品的电脑叫主机,被开发的设备叫从机。PC 程序开发的主机(开发的设备)和从机(被开发的设备)是一体的,即是本身;WinCE 开发的主机是 PC,从机是 WinCE,两者一般通过 USB 同步来通讯。要建立个概念。这个是最重要的。有客户直接问,是不是要在 WinCE 上装一个 VS2005,我并不觉得可笑。因为一些一直从事 PC 上应用开发的工程师,不像我这些搞单片机过来的,他们没有主机和从机的概念。建立这个概念,对从 PC 编程到 WinCE 开发,有很大的帮助。PC 编程不需要知道 SDK、主从机的概念,编译好程序就马上可以在本机出来。正因为如此,他们就分
3、不清主从机,哪个是在 PC 上运行,那个应该是在 WinCE 上跑。要清楚那些工具是用来开发设备程序的,那些工具是在设备上运行的。例如,开发工具 VS2005、SDK,这个对 PC 编程还是 WinCE 开发都是运行在主机上,用于设备开发的;编译出来的程序,以及运行这程序相关的 DLL(例如开发 SQL 相关的程序,需要在设备上安装 SQL、.net framework ,也就是一些 DLL)都是属于设备的。对于.net framework 或者 SQL,PC 和 WinCE 上都有自己的版本,如 PC 上是SQL2000,WinCE 是 SQLCE3.5,这个是为应用程序的运行服务的,归属于
4、从机的概念。开发 WinCE 的时候,主机会下载 SQLCE、.Net 到 WinCE 上使得开发的程序运行起开(当然可以在设备上直接安装这些或已经有了,就不用主机下载进去安装了)。开发 PC程序的时候,由于主从是一体,会看不到这个过程,导致大部分人忽略了,转而对 WinCE开发产生迷惑。现在的 VS2005 自己本身也集成了这些服务运行于设备的程序( WinCE5.0、6.0 的SQLCE .NetFramework,XP 的.NetFramework),当然某些还是要安装的,例如 XP 的SQL2000,但其目的主要是服务用户开发的程序,属于设备的。SDKSDK 就是软件开发工具包,当然是
5、属于主机上使用的东西。PC 开发无论是 VS2005,或者 VC6.0,安装的时候已经包含了 SDK 包,因为 PC 的架构(X86 )系统是单一的。而WinCE 设备的种类很多,无法做到单一,需要厂家提供。主机是调用这些 SDK 生成平台相关的程序。然后下载到设备运行。开发示意如下图所示。2、开发工具EVC4.0 SP4 & VC6.0。早期的 WinCE C+开发工具使用 EVC4.0,十分类似于 PC 上早期常用的 VC6.0。如果有 VC6.0 编程基础的,使用 EVC 新建一个工程,一步步实现功能。参考自带的帮助,这个也不会太难。当然,如果将 VC6.0 的程序直接移植到 WinCE
6、 上,这个相对困难些。最好还是自己重新建一个程序。WinCE 的 API 编程,或者 MFC,功能没有 Windows XP 的大,有些函数、类也被裁减了。但这些在 MSDN 上都有说明。另外注意的是 EVC 中字符串缺省的是 UNICODE 编码(即一个字符 wchar_t 是 2 个字节 typedef unsigned short wchar_t),而 VC 的是 ASCII 编码(一个字符 char 1 个字节)。 EVC 现在微软不推荐使用了,而且只能够支持到 WinCE5.0。我还是建议客户使用VS2005。VS2005。VS2005 不再像 EVC 和 VC 一样,分开版本分别针对平台;而是把各种平台集成到一个 IDE 上,统一管理。对智能设备,除了他本省自带的 SDK 外,用户还可以安装其他的 SDK,在创建程序的时候,选择相应的 SDK 即可。技术支持 QQ:605440535 相关 wince 平板电脑技术资料下载:新款 8 寸 A8 系列使用说明.pdf:http:/