第12章VisualC++环境下Windows程序开发概述.ppt

第12章VisualC++环境下Windows程序开发概述.ppt

  1. 1、本文档共60页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
一个线程处于以下三种状态之一:正在执行,挂起,准备运行。在单处理器环境下(如Windows 95),同一时刻只能运行一个线程。 为了在Win32中支持多线程进程结构,Win32在原来Win16基础上增加了: (1)对进程以及线程创建、操纵的支持; (2)对一个进程内线程之间的同步和同步对象的支持; (3)一个统一的共享机制。 返回本节 第三十页,共六十页。 12.4.2 连续的地址空间和先进的内存管理 (1)申请一块可移动的内存块。 (2)锁定该内存块。因为Windows引入了虚拟内存管理,可以把内存块移动到硬盘交换文件中,所以在使用内存块之前,必须将它锁定在真正的内存RAM之中,也就是告诉操作系统,现在这块内存暂时由应用程序来管理。 (3)对该内存块进行各种操作:如复制数据到内存块。 (4)解锁内存,应用程序将对该内存的控制交予Windows。 第三十一页,共六十页。 下面给出一个程序片段,来说明内存管理函数的用法。 HGLOBAL memHandle;//内存句柄 char far* lpMem;//假设长度为memLen memHandle=GlobalAlloc(GHND,memLen+1);//申请内存块,此处未做返回结果检查, //事实上,申请内存有时会失败 memcpy(lpMem,string,textLen);//拷贝数据,其中string为一字符串变量,textLen //是这个字符串的长度 GlobalUnlock(memHandle);//解锁内存 ... GlobalFree((HGLOBAL) memHandle);//释放内存 返回本节 第三十二页,共六十页。 12.4.3 内存映射文件 内存映射文件是由一个文件到一块内存的映射。Win32提供了允许应用程序把文件映射到一个进程的函数(Create)。这样,文件内的数据就可以用内存读/写指令来访问,而不是用ReadFile和WriteFile这样的I/O系统函数,从而提高了文件存取速度。 这种函数最适用于需要读取文件并且对文件内包含的信息做语法分析的应用程序,如对输入文件进行语法分析的彩色语法编辑器,编译器等。 返回本节 第三十三页,共六十页。 12.4.4 Win32s:Windows 3.x对Win32 API的支持 Win32s与Win32是有区别的。Win32s的s的含义是指子集(subset)。 运行在Windows 3.x/Win32s系统上的Win32程序支持32位指针和32位寄存器,只需要在系统调用之前稍作形式替换。 Win32s子集同Win32相比,不支持多线程,高级图形API,异步文件I/O,Unicode和安全性;而且它是运行于16位的Windows系统上的。但是同Win16相比,有它的优越之处,目前在16位Windows程序开发方面有相当的潜力。 返回本节 第三十四页,共六十页。 12.4.5 Win32编程基础 Win32数据类型 这里的数据类型指的是一些关键字,这些关键字定义了Win32中的函数中的有关参数和返回值的大小和意义。 这里需要解释一下的是句柄。句柄是Windows编程的一个关键性的概念,编写Windows应用程序总是要和各种句柄打交道。所谓句柄,就是一个惟一的数,用以标识许多不同的对象类型,如窗口、菜单、内存、画笔、画刷和电话线路等。 由于Windows是一个多任务操作系统,它可以同时运行多个程序或一个程序的多个副本。 Windows不仅使用句柄来管理实例,也用它来管理窗口、位图、字体、元文件和图标等系统资源。 第三十五页,共六十页。 Win32常用的数据类型有: 返回本节 第三十六页,共六十页。 12.5 MFC编程 12.5.1 MFC类库概念和组成 12.5.2 MFC应用程序框架 12.5.3 MFC的优点 12.5.4 MFC对消息的管理 返回首页 第三十七页,共六十页。 12.5.1 MFC类库概念和组成 类库是一个可以在应用中使用的相互关联的C++类的集合。 Microsoft提供了一个基础类库MFC,其中包含用来开发C++和C++ Windows应用程序的一组类。基础类库的核心是以C++形式封装了大部分的Windows API。类库表示窗口、对话框、设备上下文、公共GDI对象如画笔、调色板、控制框和其他标准的Windows部件。这些类提供了一个面向Windows中结构的简单的C++成员函数的接口。 第三十八页,共六十页。 MFC可分为两个主要部分: ①基础类; ②宏和全程函数。 第三十九页,共六十页。 ①基础类; MFC中的类按功能来分可划分为以下几类: 基类、应用程序框架类、应用程序类、命令相关类、文档

文档评论(0)

虾虾教育 + 关注
官方认证
内容提供者

有问题请私信!谢谢啦 资料均为网络收集与整理,收费仅为整理费用,如有侵权,请私信,立马删除

版权声明书
用户编号:8012026075000021
认证主体重庆皮皮猪科技有限公司
IP属地重庆
统一社会信用代码/组织机构代码
91500113MA61PRPQ02

1亿VIP精品文档免费下

相关文档

相关课程推荐