作者:孙晓明,华清远见嵌入式学院讲师。
1、简单介绍下Windows CE:
WindowsCE是微软公司嵌入式、移动计算平台的基础,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,它是精简的Windows 95,Windows CE的图形用户界面相当出色。
其中CE中的C代表袖珍(Compact)、消费(Consumer)、通信能力(Connectivit)和伴侣(Companion);E代表电子产品(Electronics)。与Windows 95/98、Windows NT不同的是,Windows CE是所有源代码全部由微软自行开发的嵌入式新型操作系统,其操作界面虽来源于Windows 95/98,但Windows CE是基于WIN32 API重新开发、新型的信息设备的平台。Windows CE具有模块化、结构化和基于Win32应用程序接口和与处理器无关等特点。Windows CE不仅继承了传统的Windows图形界面,并且在Windows CE平台上可以使用Windows 95/98上的编程工具(如Visual Basic、Visual C++等)、使用同样的函数、使用同样的界面风格,使绝大多数的应用软件只需简单的修改和移植就可以在Windows CE平台上继续使用。Windows CE并非是专为单一装置设计的,所以微软为旗下采用Windows CE作业系统的产品大致分为三条产品线,Pocket PC(掌上电脑)、Handheld PC(手持设备)及Auto PC。
2、现在的问题就是我们怎么开始开发Windows CE应用程序——搭建开发环境
2.1、选择开发工具
我选择eVC4(eMbedded Visual C++ 4.0)做开发工具,因为eVC4和VC 6.0很相似,对于新手是比较容易上手的。
我们可以到网站试用版软件:
eVC4:https://www.microsoft.com/downloa ... &displaylang=en
eVC4 sp4:https://www.microsoft.com/downloa ... &displaylang=en
Windows Mobile 5.0 Pocket PC SDK:https://www.microsoft.com/downloa ... &displaylang=en
Localized Windows Mobile 5.0 Pocket PC Emulator Images:https://www.microsoft.com/downloa ... &displaylang=en
完毕,按这个顺序装完这4个软件,开发环境就ok了,就可以写个Hello World测试下了。
3、个测试程序
3.1 创建工程
打开eVC4,File --> New ,新建一个 "WCE Application" 工程,填好Project name、Location并选择CPU类型。
我只在模拟器中运行这个程序,所以我只选择了Win32 (WCE X86)
注:不管选择哪种CPU,Win32 (WCE emulator)都是必须要选择的。这是一个模拟器,可以不用LCD屏就可以看到桌面。
点OK进入下一步,然后,选择"An empty project" 建一个空工程(没有任何附加代码)
3.2 编写程序
File --> New,新建个C/C++源文件(即:C/C++ source file),在File处填写该文件的文件名hello,然后在刚才建的hello.cpp文件中输入下面的代码:
// hello.cpp - A sample "Hello World " program.
#include <windows.h>
// Program entry point
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nShowCmd)
{
MessageBox(NULL, TEXT("Hello World!"), TEXT("hello"), MB_OK);
return 0;
}
现在按 F7 编译该程序,如果没有错误,就可以按 Ctrl+F5执行程序。在模拟器中可以看到程序执行结果。如下图:
4、总结
本文简单的介绍了Windows CE,并教你如何搭建开发环境,写了一个Hello World程序。有了这些基础我们就可以开始学习Windows CE程序开发了。
“本文由华清远见https://www.embedu.org/index.htm提供”
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。