WIN32编程入门:嵌入式软件开发与Windows CE API深度解析
WIN32编程入门:嵌入式软件开发与Windows CE API深度解析
本文详细介绍了WIN32编程在嵌入式软件开发中的应用,特别是Windows CE API的深度解析。文章适合有一定编程基础的读者深入学习。
WIN32编程示例:嵌入式软件开发程序入门编程示例:嵌入式软件开发程序入门
嵌入式的应用软件选择WindowsCE的首要原因之一是Microsoft Win32应用编程接口(API)的广泛应用。
Windows CE已经通过了其自身的能力证明:它能够满足32位嵌入式式程序开发的需求。同样重要的是:
Windows CE使嵌入式式系统的设计者得以充分利用Microsoft的32位基于Windows的开发工具的全部的函数。
MicrosoftWindowsCE是紧凑的、高效的和可升级的操作系统,它被广泛的应用在各种嵌入式式的产品中,从手持电脑到专门
的工业控制器和消费用电子产品中。Windows CE已经通过了其自身的能力证明:它能够满足32位嵌入式式程序开发的需求。
同样重要的是:WindowsCE使嵌入式式系统的设计者得以充分利用Microsoft的32位基于Windows的开发工具的全部的函
数。
嵌入式的应用软件选择Windows CE的首要原因之一是Microsoft Win32应用编程接口(API)的广泛应用。从运行在Microsoft
WindowsNT操作系统下的高端服务器到最小的台式机和内嵌式的应用中,WIN32 API几乎是所有为面向Windows开发32位应
用软件的内核。
本文的目的是向那些开发基于Windows CE的新的嵌入式式系统的开发者介绍WIN32事件驱动编写程序。本文将:
概述32位Windows操作系统和WIN32编程模型。
介绍线程,事件和消息是如何操作的。
给出Win32如何管理Windows CE的内存。
解释Win32意外操作的概念。
比较同步和不同步设备的界面的不同的方法。
总结明确定义的API的优位。
本文并不是刻意要完全做Win32的编程指南,而是要介绍用Win32作为嵌入式式应用程序的开发工具。
简介
对于全世界的成千上万的程序开发者来说,Win32程序模式很常见。WIN32是台式机或企业广泛应用的强大目标,而且随着
WindowsCE的涌现,它也成了嵌入式式系统的理想的程序界面形式。WIN32为Windows CE操作系统提供了一致的,文档完
备的并且函数强大的程序界面。
用WIN32在Windows CE平台开发的程序同其他的WIN32程序差不多;这意味着程序开发者在开发新的面向WindowsCE操作
系统的应用程序的时候,能够应用这些大量的WIN32的程序资源、第三代工具和外部的专门的技术。具有WIN32编程经验的
程序员会发现创建新的(维护已有的)面向WindowsCE设备(如手持电脑)的应用程序远比创建类似的面向特殊的平台或其
他应用不广的嵌入式式的操作系统的应用程序简单。
嵌入式式系统的设计者们很快意识到Windows CE的强大,并且以惊人的快速使这个操作系统与它们的新产品一体化。可是,
许多嵌入式式软件的开发者对Windows的事件驱动程序的一般技术不熟悉。对于这些软件开发者来说,在他们开始他们第一
次的基于Windows CE的项目之前,了解一些WIN32的基础的知识是有好处的。
什么是WIN32?
“WIN32”表示对于所有的Microsoft 32位平台的一种普通的应用编程接口(API)。这些平台通常指:
Windows95,Windows 98 ,WindowsNT,Windows CE
本文我们主要关注Windows CE操作系统,可是需要弄清楚的是大多数Win32的应用编程接口对上面所有三种平台都适用。这
种同用的应用编程接口的优位有很多:容易登录到应用程序中,有大量的已有程序的知识,范例和第三代软件的资源。
平台的差别
WIN32的应用编程接口定义了你作为一个程序员有用的Windows平台。WIN32应用编程接口的目的是提供了一个常用的界面
的设置,可是虚拟,不同的平台由于不同的特性及硬件的约束,其应用编程接口也不同。WIN32平台家族的一些成员支持全
部的WIN32的应用编程接口(下简称API),而其他的只支持一部分的API。为紧凑的、嵌入式式的应用软件和小型设备而设
计的Windows CE,WIN32的API最受限制。尽管如此,Windows CE的API也是足够完善的,能够处理实际的大量的高级的
嵌入式式应用程序。
WIN32与Microsoft基本类库(MFC)
用WIN32界面设计并不是创建32位基于Windows的应用程序的唯一的途径。另一种重要的途径是可在WIN32与Microsoft
Visual C++开发环境使用的Microsoft基本类库(MFC)。MFC为许多(不是所有)的WIN32的API进行了高度的封装。通
常,MFC提供了代表重要的WINDOWS的用户界面对象的类,象窗口,对话框,画刷,画笔,和字体。MFC也为没有任何用
户界面要求的嵌入式式应用软件提供了相应的类。MFC类的成员函数调用WIN32API的函数,可以使复杂的应用程序的设计巧
妙的简化。