分享
 
 
 

精通Windows API:函数、接口、编程实例(附CD-ROM光盘一张)

精通Windows API:函数、接口、编程实例(附CD-ROM光盘一张)  点此进入淘宝搜索页搜索
  特别声明:本站仅为商品信息简介,并不出售商品,您可点击文中链接进入淘宝网搜索页搜索该商品,有任何问题请与具体淘宝商家联系。
  參考價格: 点此进入淘宝搜索页搜索
  分類: 图书,计算机与互联网,操作系统,Microsoft Windows,Windows 编程开发,
  品牌: 范文庆

基本信息·出版社:人民邮电出版社

·页码:547 页

·出版日期:2009年

·ISBN:711519095X/9787115190956

·条形码:9787115190956

·包装版本:1版

·装帧:平装

·开本:16

·正文语种:中文

·附带品描述:附CD-ROM光盘一张

产品信息有问题吗?请帮我们更新产品信息。

内容简介《精通Windows API:函数、接口、编程实例》全书共18章,分为3个部分,第1部分(第1章~第3章)介绍Windows程序设计基础;第2部分(第4章~第17章)按照程序设计的各个方面进行划分,包括文件系统、内存管理、进程与线程、用户界面、Shell程序开发、Windows GDI、Socket网络通信驱动程序开发、安全机制等内容;第3部分(第18章)作为全书的总结和补充。

从Windows应用程序开发工具讲起,引导读者快速入门

详细讲解API和关键结构的使用方法

提供156个Windows API使用实例

涵盖主题:

Windows应用程序开发入门;开发工具配置与使用;文件系统;内存管理;进程、线程和模块;线程同步;服务;图形用户界面;系统信息的管理;进程间通信;Windows SheLL程序设计;WindOWS GDl;网络通信与配置;设备驱动管理与内核通信;用户、认证和对象安全;Windows API的内部原理。

注:附CD-ROM光盘一张。

编辑推荐Windows API(Windows Application Program Interface,Windows应用程序接口)是一系列函数、宏、数据类型、数据结构的集合,运行于Windows系统的应用程序,可以使用操作系统提供的接口来实现需要的功能。《精通Windows API:函数、接口、编程实例》由浅入深、循序渐进地教授读者如何使用Windows API进行Windows应用程序开发。

《精通Windows API:函数、接口、编程实例》适合广大的Windows应用程序开发人员、VC++开发工程师、网络游戏开发人员、软件培训机构学员和高校学生阅读。

目录

第1章Windows应用程序开发入门1

1.1第一个实例程序1

1.1.1start.exe1

1.1.2Windows API2

1.1.3程序入口函数2

1.1.4start.c代码分析2

1.2编译代码3

1.2.1安装Visual Studio3

1.2.2安装Microsoft Platform SDK4

1.2.3集成Microsoft Platform SDK与Visual C++速成版5

1.2.4Vista SDK与Visual Studio 20086

1.2.5Visual Studio专业版或团队系统版7

1.2.6使用图形化IDE建立工程、进行编译7

1.2.7“解决方案”与“工程”8

1.2.8使用命令行工具编译8

第2章Windows API概要10

2.1Windows数据类型10

2.1.1Windows数据类型示例10

2.1.2Windows数据类型与标准C数据类型的关系14

2.1.3Windows数据类型与Windows API14

2.1.4Windows中的数据结构15

2.2Windows API的功能分类15

2.2.1系统基本服务15

2.2.2系统管理17

2.2.3用户界面17

2.2.4图像和多媒体20

2.2.5网络20

2.2.6系统安全20

2.2.7其他功能21

2.3Windows API核心DLL21

2.3.1Kernel32.dll21

2.3.2User32.dll21

2.3.3Gdi32.dll22

2.3.4标准C函数22

2.3.5其他Dll22

2.4Unicode和多字节22

2.4.1W版本和A版本的API24

2.4.2Unicode与ASCII的转换24

2.5对Windows程序设计规范的建议25

第3章开发工具配置与使用26

3.1使用Visual C/C++编译链接工具26

3.1.1编译器cl.exe27

3.1.2资源编译器rc.exe31

3.1.3链接器link.exe32

3.1.4其他工具38

3.1.5编译链接工具依赖的环境变量39

3.1.6示例:使用/D选项进行条件编译42

3.2使用Platform SDK43

3.2.1Platform SDK的目录结构与功能43

3.2.2为编译链接工具设置环境变量45

3.2.3Platform SDK工具集46

3.2.4Windows Vista SDK48

3.3编写Makefile48

3.3.1使用nmake.exe构建工程48

3.3.2Makefile实例50

3.3.3注释50

3.3.4宏50

3.3.5描述块:目标、依赖项和命令53

3.3.6makefile预处理55

3.3.7在Platform SDK的基础上使用nmake56

3.4使用WinDbg调试57

3.4.1安装WinDbg57

3.4.2编译可调试的程序58

3.4.3WinDbg命令59

3.4.4调试过程演示59

3.5集成开发环境 Visual Studio62

3.5.1工程类型选择与配置62

3.5.2Visual Studio快捷方式64

3.5.3生成项目64

3.5.4调试65

3.5.5选项与设置65

3.6开发环境配置总结66

第4章文件系统67

4.1概述67

4.1.1文件系统的基本概念67

4.1.2文件系统主要API68

4.2磁盘和驱动器管理70

4.2.1遍历卷并获取属性70

4.2.2操作驱动器挂载点76

4.2.3判断光驱中是否有光盘81

4.2.4获取磁盘分区的总容量、空闲容量、簇、扇区信息83

4.3文件和目录管理86

4.3.1删除、复制、重命名、移动文件87

4.3.2创建、打开、读写文件,获取文件大小90

4.3.3创建目录96

4.3.4获取程序所在的目录、程序模块路径,获取和设置当前目录97

4.3.5查找文件、遍历指定目录下的文件和子目录100

4.3.6递归遍历目录树103

4.3.7获取、设置文件属性和时间105

4.4内存映射文件110

4.4.1使用Mapping File提高文件读写的效率110

4.4.2通过Mapping File在进程间传递和共享数据115

4.4.3通过文件句柄获得文件路径118

4.5总结121

第5章内存管理122

5.1Windows内存管理原理122

5.1.1基本概念122

5.1.2分页与分段内存管理、内存映射与地址转换123

5.1.3进程的内存空间125

5.1.4虚拟内存布局、内存的分工、堆与栈127

5.1.5内存的保护属性和存取权限127

5.1.6本章API列表127

5.2堆管理129

5.2.1获取堆句柄、分配与再分配堆129

5.2.2获取堆中内存块的大小信息133

5.2.3释放内存、销毁堆134

5.3全局(Global)和局部(Local)内存管理136

5.3.1Global函数136

5.3.2Local函数137

5.3.3使用全局和局部函数分配和释放内存、改变内存块属性137

5.4虚拟内存管理138

5.4.1虚拟地址空间与内存分页139

5.4.2分配和释放可读可写的虚拟内存页面139

5.4.3修改内存页面状态和保护属性、将页面锁定在物理内存中142

5.4.4管理其他进程的虚拟内存143

5.5内存操作与内存信息管理144

5.5.1复制、填充、移动、清零内存块、防止缓冲区溢出144

5.5.2获得当前系统内存使用情况146

5.5.3判断内存指针的可用性147

5.6各种内存分配方式的关系与比较148

5.6.1标准C内存管理函数与Windows内存管理API的关系149

5.6.2功能性区别149

5.6.3效率的区别149

第6章进程、线程和模块150

6.1基本概念150

6.1.1应用程序与进程150

6.1.2控制台应用程序与图形用户界面应用程序151

6.1.3动态链接库、模块151

6.1.4线程、纤程与作业152

6.1.5权限与优先级153

6.2进程管理153

6.2.1创建进程、获取进程相关信息、获取启动参数153

6.2.2编写控制台程序和图形用户界面应用程序158

6.2.3获取和设置环境变量158

6.3线程、纤程162

6.3.1创建线程、退出线程、获取线程信息162

6.3.2挂起、恢复、切换、终止线程164

6.3.3创建远程线程、将代码注入其他进程中执行167

6.3.4创建纤程、删除纤程、调度纤程170

6.3.5纤程与线程的互相转换171

6.4进程状态信息176

6.4.1PS API与Tool help API176

6.4.2遍历系统中的进程178

6.4.3列举进程的模块、线程182

6.4.4进程的堆使用、内存占用、虚拟内存大小,页面错误情况184

6.5动态链接库185

6.5.1加载、释放DLL、通过句柄获取DLL相关信息186

6.5.2编写动态链接库、导出函数186

6.5.3创建动态链接库工程,配置DLL编译链接选项188

6.5.4运行时动态获取DLL导出函数地址并调用189

6.5.5声明导出函数、创建lib库,为其他模块提供导入表调用接口190

6.5.6通过构建导入表调用DLL导出函数191

第7章线程同步192

7.1基本原理192

7.1.1线程同步的过程193

7.1.2同步对象193

7.1.3等待函数193

7.2同步对象示例194

7.2.1使用事件对象(Event)194

7.2.2使用互斥对象(Mutex)199

7.2.3使用信号量控制访问共享数据的线程数量202

7.2.4使用可等待计时器(Timer)206

7.3等待进程和线程的执行完成209

第8章服务210

8.1基本概念210

8.1.1服务控制器(SCM)211

8.1.2服务程序211

8.1.3服务控制管理程序211

8.1.4系统服务管理工具211

8.1.5服务的属性211

8.2编写服务程序212

8.2.1入口函数212

8.2.2服务主函数212

8.2.3控制处理函数213

8.3实现对服务的控制和管理216

8.3.1创建、删除服务216

8.3.2启动、停止服务,向服务发送控制请求219

8.3.3管理服务状态、配置服务、服务的依赖关系222

第9章图形用户界面229

9.1字符界面程序229

9.1.1基本概念230

9.1.2控制台读写231

9.1.3控制台字体、颜色等属性,操作屏幕缓存234

9.1.4控制台事件244

9.2图形用户界面:基本概念246

9.2.1窗口246

9.2.2窗口类246

9.2.3消息和消息处理函数247

9.2.4控件247

9.2.5资源248

9.2.6对话框248

9.3图形用户界面:窗口248

9.3.1注册窗口类249

9.3.2创建窗口251

9.3.3窗口消息处理函数253

9.3.4窗口属性、位置和大小256

9.3.5窗口显示方式257

9.3.6线程消息队列和消息循环258

9.4图形用户界面:控件258

9.4.1Tree View控件258

9.4.2为Tree View控件增加节点260

9.4.3Tree View右键菜单262

9.4.4List View控件263

9.4.5为List View控件增加分栏265

9.4.6为List View控件增加项266

9.4.7文本框控件267

9.4.8为文本框控件设置文字268

9.5界面资源269

9.5.1资源脚本(.rc)269

9.5.2资源ID定义和头文件272

9.5.3在程序中使用资源273

9.6菜单273

9.6.1菜单资源和菜单句柄273

9.6.2动态增加、删除、设置菜单及菜单项274

9.6.3菜单消息处理274

9.7对话框275

9.7.1创建对话框275

9.7.2对话框消息处理函数276

第10章系统信息的管理277

10.1Windows系统信息277

10.1.1获取系统版本277

10.1.2获取计算机硬件信息279

10.1.3获取系统目录等信息281

10.1.4用户名、计算机名、域名282

10.1.5处理系统颜色信息、尺度信息等284

10.1.6鼠标、键盘等外设信息285

10.2时间信息286

10.2.1设置、获取系统时间286

10.2.2获取开机至现在持续的时间287

10.2.3文件时间与系统时间的转换287

10.3注册表288

10.3.1注册表的作用及组织形式288

10.3.2键、子键、键属性及键值的相关操作289

10.3.3列举注册表项及键值292

10.3.4通过注册表设置一个自启动的程序293

10.3.5设置随程序启动而启动的调试器(任何程序)294

10.3.6指定程序崩溃实时调试器294

第11章进程间通信295

11.1邮槽(MailSlot)295

11.1.1创建邮槽、从邮槽中读取消息296

11.1.2通过邮槽发送消息299

11.2管道(Pipe)300

11.2.1创建命名管道300

11.2.2管道监听302

11.2.3使用异步I/O进行读写303

11.2.4关闭管道实例307

11.2.5客户端307

11.3剪贴板310

11.3.1获取、设置剪贴板数据310

11.3.2监视剪贴板317

11.3.3剪贴板数据格式325

11.4数据复制消息(WM_COPYDATA)327

11.4.1数据发送端327

11.4.2数据接收端330

11.5其他进程间通信方式332

11.5.1动态数据交换(DDE)和网络动态数据交换(NDDE)332

11.5.2通过File Mapping在进程间共享数据333

11.5.3Windows Socket333

第12章Windows Shell程序设计334

12.1Windows Shell目录管理335

12.1.1Shell对目录和文件的管理形式335

12.1.2 “我的文档”等特殊目录相关操作335

12.1.3绑定、遍历、属性获取337

12.1.4浏览文件对话框339

12.2文件协助(File Associations)340

12.2.1文件类型相关注册表键值340

12.2.2为文件指定默认打开程序341

12.2.3定制文件类型的图标342

12.3Shell扩展343

12.3.1对象及概念343

12.3.2CLSID,处理例程的GUID344

12.3.3注册Shell扩展345

12.3.4COM程序开发基础346

12.3.5编写Handler程序346

12.3.6Shell扩展程序的调试362

12.3.7总结363

12.4任务栏通知区域(Tray)图标363

12.4.1创建图标窗口364

12.4.2创建图标和图标菜单367

12.4.3最小化主窗口到通知区域370

12.4.4弹出气泡通知372

12.4.5动态图标374

12.4.6其他功能376

第13章Windows GDI379

13.1GDI编程接口概述379

13.1.1Windows GDI的功能379

13.1.2链接库与头文件380

13.2设备上下文(DC)、输出操作与图形对象380

13.2.1设备上下文类型与关联设备380

13.2.2图形对象的作用及与DC的关系380

13.2.3各类图形对象的具体属性与作用383

13.2.4绘制、填充、写入等图形输出操作384

13.2.5修剪与坐标变换385

13.2.6设备上下文的图形模式385

13.3一个最简单的GDI程序386

13.3.1示例386

13.3.2DC的操作387

13.3.3颜色的表示388

13.3.4图形对象:画刷和画笔389

13.3.5输出操作:绘制图形和线条390

13.4文字和字体391

13.4.1选择、设置字体393

13.4.2选择字体图形对象394

13.4.3文字的颜色394

13.4.4输出文字395

13.4.5DC图形模式设置395

13.4.6遍历字体396

13.4.7为系统安装、删除字体文件398

13.5绘制线条398

13.5.1选择画笔对象399

13.5.2直线399

13.5.3绘制任意曲线399

13.5.4跟踪鼠标轨迹399

13.5.5弧线405

13.6绘制图形405

13.6.1填充颜色与边缘勾勒406

13.6.2绘制矩形、椭圆、圆角矩形406

13.6.3椭圆弓形和椭圆扇形411

13.6.4多边形411

13.6.5RECT结构及对RECT的操作412

13.7位图操作414

13.7.1截取屏幕、保存位图文件414

13.7.2将位图显示在界面上419

13.8区域(Regions)、路径(Paths)与修剪(Clip)操作422

13.8.1区域的创建及形状、位置等属性422

13.8.2区域边沿、区域填充、反转与勾勒操作423

13.8.3组合、比较、移动等操作426

13.8.4点击测试(Hit Testing)427

13.8.5路径的创建与操作431

13.8.6路径转换为区域432

13.8.7使用区域和路径进行修剪操作,限制输出432

13.9坐标变换438

13.9.1缩放439

13.9.2旋转440

13.10调色板440

第14章网络通信与配置443

14.1Socket通信444

14.1.1客户端444

14.1.2服务端449

14.1.3处理并发的客户端连接455

14.1.4网络通信的异步I/O模式456

14.2IP Helper456

第15章程序安装与设置463

15.1创建cab文件463

15.1.1makecab.exe463

15.1.2压缩多个文件464

15.1.3Cabinet软件开发工具包(CABSDK)466

15.2编写INF文件466

15.2.1INF文件格式466

15.2.2Install节468

15.2.3CopyFiles和AddReg等安装过程468

15.2.4源路径和目的路径469

15.2.5字符串表469

15.3安装程序setup.exe的编号469

15.4使用msi文件进行安装472

15.4.1Windows Installer Service472

15.4.2msi文件的创建与修改工具orca.exe474

15.4.3准备工作475

15.4.4编辑表组475

第16章设备驱动管理与内核通信476

16.1设备管理476

16.1.1列举设备接口477

16.1.2监控设备的加载和卸载483

16.2I/O控制、内核通信488

16.2.1加载驱动程序488

16.2.2控制驱动程序、与驱动程序进行通信495

16.3编写设备驱动程序498

16.3.1驱动程序开发包:DDK499

16.3.2开发驱动程序499

16.4I/O模式,同步与异步504

第17章用户、认证和对象安全506

17.1基本概念506

17.1.1访问令牌、权限和用户标识506

17.1.2进程的系统操作权限507

17.1.3安全对象508

17.1.4访问控制列表(ACL)508

17.2安全机制程序示例509

17.2.1列举进程访问令牌内容和权限509

17.2.2修改进程的权限514

17.2.3列举安全对象的安全描述符515

17.2.4修改安全描述符521

17.3用户522

17.3.1创建用户522

17.3.2用户组523

17.3.3删除用户525

17.3.4列举用户和用户组、获取用户信息525

第18章Windows API的内部原理532

18.1关于API的补充说明532

18.1.1Windows API的版本演进和Vista新增API532

18.1.264位操作系统的接口533

18.2Windows系统中的对象封装533

18.2.1什么是对象534

18.2.2面向对象的思想534

18.2.3Windows系统中的对象:内核对象、GDI对象等534

18.3Windows程序设计参考:文档资源与样例代码534

18.3.1SDK文档和MSDN534

18.3.2SDK示例代码535

18.4x86平台程序函数调用原理535

18.4.1函数调用的真实过程535

18.4.2函数调用约定539

18.4.3为什么通过参数返回数据时只能使用指针540

18.4.4缓冲区溢出540

18.4.5程序运行错误的调试技巧540

18.5可执行程序结构与API函数接口内部机理541

18.5.1Windows可执行程序结构541

18.5.2导入表、导出表、动态链接543

18.5.3NTDLL.DLL、NATIVE API和SSDT544

18.5.4API HOOK546

18.6发布程序546

18.6.1合理选择编译链接选项546

18.6.2构建到指定路径546

18.7模块化,向Windows API学习接口定义547

18.7.1lib文件547

18.7.2头文件547

18.7.3为第三方应用软件提供SDK547

……[看更多目录]

序言关于WindOWsAPl

WindowsAPI(WindowsApplicationProgramInterface)是一系列函数、宏、数据类型、数据结构的集合。运行于Windows系统的应用程序可以使用操作系统提供的接口来实现应用程序需要的功能。Windows开发平台是所有程序开发平台中非常重要的一种,是程序设计中一个重要的方面。本书介绍了Windows应用程序开发的各个方面。

本书的写作方法

程序设计是一门实践性很强的学科,本书在编写过程中十分注重与实际开发工作相联系,在讲解每一个编程要点时,都以实例为核心进行分析、演示,并把实际工程中开发人员可能遇到的问题以实例的方式向读者讲解。

与此同时,本书同样重视基础知识的讲解,重视原理的说明,对程序所使用的每一个API和每一个结构的使用方法都尽量详细说明。本书还在第18章详细介绍了Windows系统调用的内部过程。

解决开发人员实际编码过程中可能出现的问题也是本书的一个主要目的,因此本书使用了大量篇幅来讲解编译选项等最容易被忽略,但是却是最容易在程序设计中出现问题,也是常常使得程序员不知道如何解决的问题。

本书主要内容

本书共分18章,涵盖了Windows应用程序设计的基本内容。第1、2、3章是Windows程序设计的基础。第4章~第17章按程序设计的方面划分,每个方面一章。第18章是全书的总结和提高。

第1章主要讲解如何配置Windows应用程序的开发工具,从最简单的实例入手,使读者对Windows应用程序的开发有一个初步的认识。

第2章对WindowsAPI作了简要的介绍,包括WindowsAPI基本的功能分类、数据类型等。

第3章介绍了开发工具配置与使用,包括基本的编译链接工具c1.exe、rc.exe、link.exe,PlatformSDk的使用,Makefile的编写以及使用WinDbg的调试方法等。

文摘插图:

精通Windows API:函数、接口、编程实例(附CD-ROM光盘一张)

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
>>返回首頁<<
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有