文档之家
首页
教学研究
幼儿教育
高等教育
外语考试
建筑/土木
经管营销
自然科学
当前位置:
文档之家
›
第五章_Windows应用程序编程接口API
第五章_Windows应用程序编程接口API
格式:pptx
大小:453.66 KB
文档页数:66
下载文档原格式
下载原文件
/ 66
下载本文档
合集下载
下载提示
文本预览
1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Visual C++
5.1.4 WindowsAPI分类(续)
9. 打印管理服务
在Windows操作系统下,可以实现在各种设备下的打 印。打印管理服务提供了完整的函数集支持这些操作, 例如检索打印机,准备打印等。这些服务所对应的函数 包含在打印管理函数库——Winspool.drv中。 10. 解/压缩文件服务
该服务提供了对文件的压缩和解压服务。这些服务 所对应的函数包含在函数库——Lz32.dll。
在VC6.0中提供了一个文件Win32api.csv。它是一个 Win16与Win32函数的对照表。通过它读者可以浏览到 Windows各种版本下API函数的原型说明。
Visual C++
5.1.5 操作系统的认识
第5章 目 录
Visual C++
本章以一些API设计的控制台程序和具有图形界面的Win32程序 为例,阐述了利用API函数开发程序的过程,重点在于理解操作系统 所提供的各种服务以及程序员如何进行调用。
1. 2. 3. 4. 5. 习题
API概述 内核服务API函数的使用 网络接口服务 Win32 API编写图形界面程序 图形设备接口与用户接口服务
内核服务的函数大部分包含在Windows内核库——Kernel32.dll中。
Visual C++
5.1.4 WindowsAPI分类(续)
■ 2.图形设备接口
■
图形设备接口是Windows最原始的图形输出库(最原
始意味着除了GDI外,还有工业界用的OpenGl和游戏界用的
DirectX,VC都对他们提供支持)。当看到图形或文本显示在屏幕
Visual C++
第5章 Windows应用程序编程接口
教学要点
本章内容主要包括API的概念及分类,从API的使用看 操作系统所提供的服务,操作系统内核中的文件操作API 的使用,网络服务API函数的使用,利用图形设备接口 API编写图形用户界面程序的方法。
要求了解API的分类及其对应的磁盘上的物理文件 .DLL的名称、网络服务API的含义和网络编程的一些基本 概念、进程概念及建立新进程的方法、WM_PAINT消息 含义。握握API概念和其与操作系统提供的程序员接口的 关系、内核中文件操作API的调用,熟悉API编写图形用 户界面程序的步骤,熟练掌握API编写的图形用户界面程 序的主要组成模块及含义。
内核服务体现了Windows操作系统“服务”的观点。作为一个程序员 我们应该利用这些服务函数来充分发挥操作系统的功能。对于这部分API函 数的使用,我们可以在基于控制台的应用程序中编写,因为这些函数 都是 一些与Windows图形用户界面无关的,在字符方式下操作比较简单。后面有 关这方面函数的操作就是在基于控制台的应用程序中使用的。
VC下提供了对文件操作的四种方式:
1使用C语言中的fopen()、fprintf()、fread()等基本的函数进 行文件操作; 2 使用C++中的流式文件接口fstream中的函数进行操作; 3 使用面向对象的类CFile进行操作;
4 使用有关的文件API进行操作。
1. 文件操作 2. 驱动器操作
5.1.2 API简介
Visual C++
Windows操作系统向程序员提供了可以实现开启窗口、绘制 图形,使用系统各种设备等的一组函数服务,称之为 Application Programming Interface(应用程序编程接口), 即API函数。
利用VC进行Windows应用程序的开发,除了用到各种.h头文 件中的库函数及数据结构外,还需要使用Windows SDK(Software Development Kit,软件开发工具包)提供的使用 于Windows应用程序的特殊库函数和数据结构、语句、文件结 构。所有这些内容组成了Windows应用程序设计接口API。
5.1 API概述
Visual C++
1. 关于Windows API编程模式 2. API简介 3. Windows核心——三个动态链接库 4. Windows API分类 *5.1.5 操作系统的认识
Visual C++
5.1.1 关于WindowsAPI编程ቤተ መጻሕፍቲ ባይዱ式
Windows API编程是一种原始的开发Windows应用程 序模式,它主要使用的是C语言、少量的C++通用类及 “原始”的Windows应用程序编程接口 API(Application Programming Interface)。这些函 数都是比较底层的函数,其地位大致相当于字符界面环 境下C语言的标准库函数,只不过其运行环境为Windows 的图形界面环境。
用户界面管理库包括了Windows管理、菜单、光标、定时器和通信等有关的 函数。在Windows中,窗口的标识被称为“句柄”。 3. Windows图形设备界面库(Gdi32.dll)
图形设备界面库提供了用于管理系统支持的所有图形设备函数,包括屏幕、 打印机等设备的管理。GDI库中的函数为应用程序提供与设备无关的绘图内容。 应用程序中通过GDI库中的函数绘图,不是直接面向硬件操作,而是通过“设备 描述表”来进行操作,它通过句柄hDC来跟踪。
操作系统有两个接口:一个是用户接口,另一个是程序员接口。
VC开发工具的强大,其中很重要的一个方面就是对于Windows API的直接调用,其它任何开发工具中的函数都是对其的一个封装。 凡是在Windows工作环境下执行的应用程序,都可以通过某种特定 方式调用Woindows API函数。可以毫不夸张地说,Windows API函 数是构建整个Windows框架的基石,在它下面是Windows操作系统核心 ,在它上面则是所有华丽的Windows应用程序。
7. 版本服务 版本服务主要提供有关文件的版本信息。这些服务所对应的函数
包含在版本函数库——Version.dll中。
8. 公共对话框服务
公共对话框,又叫通用对话框,是Windows预定义的对话框,可以 使用通用对话框来执行六种标准操作,选择文件,指定字体、选择颜 色、打印设置、查找文本、保存文件。这些服务所对应的函数包含在 公共对话框函数库——Comdlg32.dll中。
三个动态链接库
Windows操作系统核心有三个动态链接库(Kernel32.dll, User32.dll,Gdi32.dll),这些动态链接库构成了Win32 API函数。
1. Windows内核库(Kernel32.dll) 内核库中的函数用于处理操作系统功能的所有核心工作,例如多任务管理、
内存管理等。另外内核库还管理系统注册表。 2. Windows用户界面管理库(User32.dll)
■
顾名思义,图形设备接口是与图形界面有关的,因此这些
函数的使用要在图形用户界面下操作。即必须建立基于Win32的应
用程序,建立的步骤如4.4节所示。
■
图形设备接口的函数是包含在Windows图形设备界面库——
Gdi32.dll中。
Visual C++
5.1.4 Windows API分类(续)
3.用户接口服务
本篇的后多半部分虽然采用的是相对比较简单的MFC 编程,但使用底层的API函数编写程序可以看到许多MFC 编程看不到的东西,从而对Windows的内部运作有更深入 的了解。进行API编程,要求用户对Windows环境比较熟 悉,并且熟悉C语言。在API编程中用到大量的有关操作 系统的结构体变量和控制操作系统的函数,当在使用 API函数遇到问题时,可以随时查阅Windows的API文档, 它位于MSDN的Platform SDK部分。
/*目标文件存在时的操作模式, 为 true时 , 函数调用失败, 为 False时, 现有文件将被覆盖*/ ) ; 文 件 移 动 和 文 件 删 除 的 API函数是MoveFileEx()和 DeleteFile() 【例5-1】调用API函数CopyFile实现文件拷贝实例。 Windows的内核功能的实现不一定要在Windows的图形界面下完成,在 字符方式下也可以。由于目前Windows图形用户接口程序的开发还没有 讲(5.4节和5.5节中讲),并且我们目前掌握的重点是利用API函数实 现Windows内核功能的演示,所以下面的程序仍然是字符界面下的单文 件控制台工程,该程序的主文件的名称为FileCopy.cpp。
Visual C++
5.2 内核服务API函数的使用
内核服务是最能体现API函数威力的地方,通过这些函数,用 户能够使用操作系统内核所提供的核心功能。操作系统的进程管 理、文件管理、内存管理都是属于内核的功能。
1. 文件管理内核服务 2. 进程操作 3. 计算机系统信息操作
Visual C++
5.2.1 文件管理内核服务
Windows三个核心库中的API函数的原型声名在windows.h中有说明,这就是我们在 编写Win32应用程序时要在程序开头放#include “windows.h”语句的原因。
Visual C++
5.1.4 Windows API分类
■ 根据Windows API函数完成的功能,可以将其分为如下的类 别:
网络服务的函数是在网络接口函数库——Mpr.dll、Wininet.dll和 Winsock32.dll中。 5.多媒体服务
多媒体技术是指利用计算机综合处理多媒体信息——文本、图形、 图象和声音等,使多种信息建立逻辑连接,集成为一个系统并具有交 互性。多媒体服务提供了数字音频、视频、图形、图象等服务。 该服务的函数主要包含在多媒体函数库——Winmm.dll中。
1.内核服务 通过内核服务函数,应用程序可以使用计算机中的资源和操作系统
的特性,例如内存,文件系统、设备、进程、线程等。拿一个简单的文 件输入输出函数来说,通过这些函数,程序员可以存取本地计算机或网 络中某台计算机中的文件、目录、输入输出设备,并且这些文件函数支 持各种各样的文件系统,包括FAT、NTFS的文件系统。
事实上,任何开发工具提供的类库和构件都是架构在Win32 API函数基础上,是封装了的API函数集合。这些类库和构件简化 了程序的开发,但其功能有限。在实际应用中,如果我们希望开发 出更灵活、更实用、更具效率的程序时,则必须要涉及直接使用 API函数。虽然类库和构件使应用程序的开发简单了,但它们只提 供Windows的常用的一般功能,对于比较复杂和特殊的功能来说, 使用类库和构件中提供的方法是非常难以实现的,这时就需要直接 调用特定的API函数。
Visual C++
5.1.4 WindowsAPI分类(续)
6. 客户/服务方式存取服务
在客户/服务方式存取模式中,客户可以连接到服务器上以使用服 务器的功能和数据,服务器通过客户端的标识和权限来决定客户端可 以使用的功能。Win2K提供了一套函数来限制和允许客户端对服务端的 访问。这些函数扩展了Win2k的存取控制模型来使用服务端的私有对象 和使用服务端的功能。客户/ 服务方式存取服务又称操作系统高级编 程接口,这些函数包含在高级编程接口函数库——Advapi32.dll中。
使用Win32 API,应用程序可以充分挖掘出Windows 32位
操作系统的潜力,Microsoft的所有32位平台都支持统一的API, 包括函数、结构、消息、宏及接口。使用Win32 API,不但可 以开发出在各种平台上都能运行的应用程序,而且还可以充分 利用每个平台上特有的功能和属性。
5.1.3 Windows核心——Visual C++
上时,这就是GDI的功劳。它提供了在显示器、打印机或其它设备
上生成图形的函数与相关的数据结构。利用GDI函数,你可以画直
线、曲线、文本、位图等。你还可以使用各种各样的绘图对象如
笔、画刷、字体等,使得所绘制的图形更加丰富多彩。另外, Windows本身也是通过GDI来绘制其用户界面,包括窗口、菜单和 对话框。
用户接口服务函数可以创建和使用Windows来显示输出、提示用户 输入和执行与用户交互的任务。用户接口服务是通过一些常见的 Windows对象来实现的,例如按钮、组合框、编辑框、菜单、键盘输入、 定时器等。
用户接口服务的函数是在Windows用户界面管理库——User32.dll中。
4.网络服务
网络服务允许分布在网络中不同计算机上的应用程序进行通讯。通 过这些函数可以创建和管理共享资源,例如共享目录和网络打印机。
1 . 文件操作
Visual C++
API为一般的文件操作提供了三个函数:移动、复制和删除。
文件拷贝的API函数如下所示:
BOOL CopyFile( //从源文件向目标文件复制内容 LPCTSTR lpExistingFileName, // 源文件名称 LPCTSTR lpNewFileName, // 目标文件名称 BOOL bFailIfExists
文档推荐
最新文档
电力行业的大数据分析与模型
人教版七年级生物上册期末试题及答案5套
高教版中职英语(拓展模块)Uint 6《Keeping Fit》word教学设计
疯狂的赛车影评观后感
电力行业的数字化转型与未来趋势
七年级上册生物期末考试试卷含答案
感谢有你陪伴唯美句子15句
初中七年级生物上册期末试卷及答案【完整版】
能源互联网形势下的电力大数据发展趋势
介绍单位招聘人才的几个技巧