- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第1章Windows API基础
第1章 Windows API基础
微软公司随Windows操作系统发布的应用程序接口(application programming Interface),即通常所说的API,是Windows系统为其下运行的各类应用程序提供的重要服务功能。微软的所有Win32平台都支持统一的API调用,包括函数、结构、消息、宏及接口。通过Windows系统提供的API服务功能,应用程序可以充分挖掘Windows系统的潜力。
API的核心是一组用C语言编写的供外部应用程序调用的函数过程,这些函数封装在Windows系统的一系列DLL动态库文件中。通过调用动态库文件中的函数,程序员可以在自己开发的应用中方便地向系统请求或执行更低级的设备访问,利用和控制系统资源,实现与系统相同或相似的功能。由此可以降低应用系统开发的复杂性,提高开发效率,并且无论是应用供应商还是最终用户都无需支付额外的费用。
1.1 API概念
1.1.1 API定义及作用
基于多任务的Windows操作系统除了协调应用程序的执行、分配内存、管理系统资源外,同时也是一个服务中心。调用这个服务中心的各种服务,可以协助应用程序打开窗口、绘制图形、访问网络、实现设备控制等功能。这些服务大都是通过系统接口(Interface)实现的。由于服务的对象是系统下运行的各种应用程序(application),所以微软在其开发者技术文档库MSDN中将其称之为 Application Programming Interface,简称 API。事实上,API的核心是微软公司随Windows操作系统发布的,封装在一系列DLL动态库中的一组供外部应用程序调用的函数过程。通过这些过程用户可以构建Windows NT、Windows 95/98、Windows 2000和Windows XP下各种Win32应用程序。用户开发的应用系统可以通过应用程序接口向计算机的操作系统请求或执行更低级的设备访问操作。
当Windows操作系统开始占据主导地位的时候,开发Windows平台下的应用程序成为现实的需要。而在Windows程序设计领域处于发展的初期,程序员所能使用的编程工具惟有API函数,这些函数是Windows提供给应用程序与操作系统的接口,它们犹如儿童搭积木一样,可以构建出各种界面丰富、功能灵活的应用程序。所以可以认为它API是构筑整个Windows框架的基石,在它的下面是Windows操作系统的核心,而在它的上面则是所有华丽的Windows应用程序。
在Visual C++、Visual Basic、PowerBuilder(后文简称为PB)、Delphi这些优秀可视化编程工具的诞生之前,程序员想开发Windows下的应用就必须借助API。由于API固有的复杂性和程序员缺乏对其深刻的了解,令许多人在其面前望而却步。然而随着软件技术的不断推陈出新,在Windows平台上出现了很多优秀的可视化编程环境,程序员可以采用“即见即所得”的编程方式来开发具有精美用户界面和功能强大的应用程序。
可视化编程工具提供了大量的类库和各种控件,它们替代了API的神秘功能。事实上这些类库和控件都是构架在Win32 API函数基础之上的,是封装了的API函数的集合。它们把常用的API函数组合在一起成为一个控件或类库,并赋予其方便的使用方法,极大地加速了Windows应用程序开发的过程。有了这些控件和类库,程序员便可以把主要精力放在企业业务逻辑的实现和应用整体功能的设计上,而不必过于关注界面设计、设备控制、系统资源访问等技术细节。
实际上,如果要开发出更灵活、更实用、更具效率的应用程序,就必然要涉及到直接使用API函数。虽然类库和控件简化了应用程序的开发,但它们只提供Windows的一般功能,对于比较复杂和特殊的功能,当使用类库和控件难以实现时,就需要借助于API来实现。
需要指出的是,Windows系统的API服务是面向所有用户的,只要用户取得了Windows的使用权,用户也就同时拥有了API的访问权。Visual Basic、Dephi、PB等各种Windows下的开发语言都可以通过自己特有的方式访问API。
虽然所有在Win32平台上运行的应用程序都有权享受操作系统提供的API服务,但无可置疑的是,在C语言中访问API函数有着得天独厚的便利,这是因为API函数的定义以及在参数的传递上是以C语言为标准的。但是,只要在PB中按照一定的规则声明API函数,PB开发同样可以享受到这种服务。
操作系统提供的API由函数、消息、数据结构、数据类型以及语句组成,在Windows应用程序的开发和运行中,使用最多的部分是从 Windows 中调用 API 函数的代码元素,包括以下3个部分:
?(1)函数声明;
?(2)用户自定义类型,
文档评论(0)