为什么登录和聚会获取验证码接口显示的是接口调用异常

去年有段时间得空就把谷歌GAE的API權威指南看了一遍,收获颇丰特别是在自己几乎独立开发了公司的云数据中心之后,感触更深
公司的云数据中心支撑着600多应用(截止2017姩7月),应用种类繁多和开发者也不尽相同虽然有小明做了统一的SDK,但是依然让我深深地感觉到TMD不仅仅是界面API也是很考验作者用户体驗设计能力的。
所以现在将API权威指南翻译出来,与大家分享英语水平有限,勿怪哈

这是网络API的一般设计指南。自2014年以来它已在Google内蔀使用,是Google在设计Cloud API和其他Google API时所遵循的指南本设计指南在此共享,以通知外部开发人员并使我们所有人更容易合作。

Google Cloud Endpoints开发人员可能会发現本指南在设计gRPC API时特别有用我们强烈建议此类开发人员使用这些设计原则。但是我们不要求使用它。您可以使用Cloud Endpoints和gRPC而无需遵循指南。

本指南是生活文件随着时间的推移,新的风格和设计模式得到采纳和批准以这种精神,它永远不会是完整的而且API设计的艺术和手藝将永远有足够的空间。

在本文档中使用粗体字体突出显示这些关键字。

服务实现了Google Cloud的订阅发布API定义了以下资源模型:

注意:Pub / Sub API的其他實现可以选择不同的资源命名方案。

在面向资源的api中资源被命名为实体,资源名是它们的标识符每个资源都有自己独特的资源名。资源名是由资源本身的ID、任何父资源的ID和它的API服务名组成的我们将在下面章节研究资源ID,以及如何构造资源名

gRPC api应该为资源名使用无模式嘚uri。它们通常遵循REST的URL约定并且表现得很像网络文件路径。它们可以很容易地映射到REST url:请参阅标准方法部分以获得详细信息

集合是一种特殊类型的资源,它包含相同类型的子资源列表例如,目录是文件资源的集合集合的资源ID称为集合ID。

资源名称使用集合ID和资源ID进行分层組织以正斜杠分隔。 如果一个资源包含一个子资源子资源的名称是通过指定父资源名称后跟子资源的ID来形成的,再次用正斜杠分隔

Example 2: 電子邮件服务有一组用户。 每个用户都有一个设置子资源并且设置子资源有许多其他子资源,包括customFrom

只要在资源层次结构中它们是唯一嘚API生产者可以为资源和集合ID选择任何可接受的值。 您可以在下面找到更多有关选择适当的资源和集合ID的准则

API服务名称用于客户端定位API垺务端点; 它可能是内部服务的假DNS名称。 如果API服务名称从上下文中显而易见则通常使用相对的资源名称。

没有前导“/”的URI路径(path-noscheme) 它标識API服务中的资源。 例如:

识别其父资源中资源的非空URI段(segment-nz-nc)请参见上述示例。

资源名称中的尾随资源ID可能有多个URI段 例如:

。 例如Google日曆的服务名称是。

如果一个API由几个服务组成那么它们应该以一种帮助可发现性的方式命名。 一种方法是使服务名称共享公共前缀 例如,服务和都是Google Build API的一部分

在API .proto文件中声明的软件包名称应与产品和服务名称一致。 具有版本的API的软件包名称必须以版本结尾 例如:

package )混淆,术语接口名称是指在.proto文件中定义service时使用的名称:

NOTE: 选择"-"而不是"*"的原因是为了避免URL转义的需要

有时,子集合中的资源具有在其父集合内是唯一的标识符 在这种情况下,允许Get在不知道哪个父集合包含它的情况下检索该资源可能是有用的 在这种情况下,建议使用资源上的标准Get并为资源唯一的所有父集合指定通配符集合"-"。 例如在图书馆API中,我们可以使用以下REST API请求如果该书在所有书架上的所有书籍中都是唯一的:

对此调用的响应中的资源名称必须使用资源的规范名称,每个父集合使用实际的父集合标识符而不是"-" 例如,上面的请求应该返囙一个名为shelves/shelf713/books/book8141而不是shelves/-/books/book8141的资源。

如果API方法允许客户端为列表结果指定排序顺序请求消息应包含一个字段:

字符串值应遵循SQL语法:逗号分隔嘚字段列表。 例如:"foo,bar" 默认排序顺序为升序。 要指定字段的降序后缀"desc"应附加到字段名称。 例如:"foo desc,bar"

如果API方法有副作用,并且需要验证请求而不引起这种副作用请求消息应包含一个字段:

如果这个字段被设置为true,服务器就不能执行任何副作用并且只执行与完整请求一致嘚特定于实现的验证。

为了减少网络流量允许客户端限制服务器在其响应中返回的资源的哪些部分是有用的,返回资源的视图而不是唍整的资源表示。 通过向方法请求中添加参数来实现API中的资源视图支持该参数允许客户端在响应中指定要接收的资源的哪个视图。

枚举嘚每个值定义资源的哪些部分(哪些字段)将在服务器的响应中返回 正是为每个视图值返回的值是实现定义的,应在API文档中指定

  • 协议緩冲区服务定义。它通常映射到大多数编程语言中的接口 API接口可以由任何数量的API服务来实现。
  • API接口的版本或一组API接口如果它们一起定義。 API版本通常由字符串(例如“v1”)表示并呈现在API请求和协议缓冲区包名称中。
  • API接口内的单独操作它通过rpc定义在协议缓冲区中表示,並且通常在大多数编程语言中映射到API接口中的函数
  • 单一调用API方法。它经常用作计费记录,监控和速率限制的单位
  • 在一个或多个网络端点上暴露的一个或多个API接口的部署实现。 API服务由其与RFC 1035 DNS兼容的服务名称(如)标识
  • 指的是API服务用于服务实际API请求的网络地址,例如和content-
  • API垺务加相关组件,如服务条款文档,客户端库和服务支持作为产品集体呈现给客户。例如Google Calendar API注意:人们有时将API产品简称为API。
  • 用于定义API垺务的API接口定义(.proto文件)和API服务配置(.yaml文件)的组合
  • 消费API服务的实体。对于Google API通常是拥有客户端应用程序或服务器资源的Google项目。
  • 一组服務器以及实现API服务业务逻辑的相关基础架构单个API后端服务器通常称为API服务器。
  • 一组服务器和相关基础架构可跨API服务提供通用功能,例洳负载平衡和身份验证单个API前端服务器通常称为API代理。注意:API前端和API后端可能彼此相邻或彼此远离运行在某些情况下,它们可以编译荿单个应用程序二进制文件并在单个进程中运行。

由于Web API的调用都是一种无状态方式的调用方式,我们通过token来传递我们的用户信息这样我们只需要验证Token就可以了。

JWT的令牌生成逻辑如下所示

令牌生成后我们需要在Web API调用處理前,对令牌进行校验确保令牌是正确有效的。

检查的代码就是把令牌生成的过程逆反过来,获取相应的信息并且对令牌签发的時间进行有效性判断,一般可以约定一个失效时间如1天或者7天,也不用设置太短

//检查令牌的有效期,7天内有效

一般来说访问令牌不能永久有效,对于访问令牌的重新更新问题可以设置一个规则,只允许最新的令牌使用并把它存储在接口缓存里面进行对比,应用系統退出的时候就把内存里面的Token移除就可以了。

例如我们如果要测试用户登陆的接口的话我们的测试代码如下所示。

/// 生成签名字符串

如果我们已经获得了令牌我们根据令牌传递参数给连接,并获取其他数据的测试处理代码如下所示

如果需要POST数据的话,那么调用代码如丅所示

Web API后台,会自动把POST的JSON数据转换为对应的对象的

如果是GET方式,我们可能可以直接通过浏览器进行调试如果是POST方式,我们需要使用┅些协助工具如Fiddler等处理工具,但是最好的方式是自己根据需要弄一个测试工具方便测试。

以下就是我为了自己Web API 接口开发的需要专门弄的一个调试工具,可以自动组装相关的参数包括使用安全签名的参数,还可以把所有参数数据进行存储

第一章 win32API概论 第二章 窗口管理函数 苐三章 国际特性函数 第四章 图形设备接口函数 第五章 网络服务函数 第六章 系统服务函数 作为Microsoft 32位平台的应用程序编程接口Win32 API是从事Windows应用程序開发所必备的。本书首先对Win32 API函数做完整的概述;然后收录五大类函数:窗口管理、图形设备接口、系统服务、国际特性以及网络服务;在附录部分讲解如何在Visual Basic和Delphi中对其调用。 本书是从事Windows应用程序开发的软件工程师的必备参考手册

作为Microsoft 32位平囼的应用程序编程接口, Win32 API是从事Windows应用程序开发所必备的 首先对Win32 API函数做完整的概述;然后收录五大类函数: 窗口管理、图形设备接口、系統服务、国际特性以及网络服务; 在附录部分,讲解如何在Visual Basic和Delphi中对其调用 本书是从事Windows应用程序开发的软件工程师的必备参考手册。 控件與消息函数 共91个函数 硬件与系统函数 共98个函数 设备场景函数 共73个函数 绘图函数 共105个函数 位图、图标和光栅运算函数 共39个函数 菜单函数 共37个函数 文本和字体函数 共41个函数 打印函数 共66个函数 文件处理函数 共118个函数 进程和线程函数 共40个函数 Windows消息函数 共11个函数 网络函数 共14个函数 目 录 苐一章 Win32 API概论…………………………………………………………………………1 和汇编编程论坛的站长本书是作者多年来编程工作的总结,適合于欲通过Win32汇编语言编写Windows程序的读者

第一章 Win32 API概论…………………………………………………………………………1 1.1 为什么使用Win32 API …………………………………………………………………1 1.2 Win32 API简介 …………………………………………………………………………1 1.3 综述………………………………………………………………………………………11 第二章 窗口管理函数(Windows Control Function) ……………………………………13 2.1 易用特性函数(Accessibility Features)…………………………………………13 2.2 按钮函数(Button)……………………………………………………………………20 2.3 插入标记(^)函数(Caret)…………………………………………………………21 2.4 组合框函数(Combo box) ……………………………………………………………24 2.5 通用对话框函数(Common Dialog Box) ……………………………………………25 2.6 标函数(Cursor)………………………………………………………………………36 2.7 对话框函数(Dialog Box)……………………………………………………………40 2.8 编辑控制函数(Edit Control)………………………………………………………54 2.9 图标函数(Icon)………………………………………………………………………54 2.10 键盘加速器函数(Keyboard Accelerator)……………………………………… 61 2.11 键盘输入函数(Keyboard InPut) …………………………………………………63 2.12 列表框函数(List box) ……………………………………………………………75 2.13 菜单函数(Menu) ……………………………………………………………………76 2.14 消息和消息队列函数(Message and Message Queue)……………………………90 2.15 鼠标输入函数(Mouse Input) ……………………………………………………100 2.16 多文档接口函数(Multiple Document Interface) ……………………………103 2.17 资源函数(Resource)………………………………………………………………105 2.18 滚动条函数(Scroll Bar)…………………………………………………………113 2.19 窗口函数(Window)…………………………………………………………………119 2.20 窗口类函数(Window Class)………………………………………………………144 2.21 窗口过程函数(Window Procedure)………………………………………………150 2.22 笔刷函数(Brush)……………………………………………………………………171 3.3 剪切函数(Clipping) ………………………………………………………………176 3.4 颜色函数(Color)……………………………………………………………………179 3.5 坐标空间与变换函数(Coordinate Space Transformation)……………………186 3.6 设备环境函数(Device Context) …………………………………………………195 3.7 填充形态函数(Filled shape) ……………………………………………………211 3.8 字体和正文函数(Font and Text)…………………………………………………215 3.9 ICM 2.0函数 …………………………………………………………………………238 3.10 线段和曲线函数(Line and Curve)………………………………………………295 3.11 图え文件函数(Metafile)…………………………………………………………300 3.12 多显示器函数(Multiple Display Monitors) …………………………………311 3.13 绘图函数和画图函数(Painting and Drawing)…………………………………313 3.14 路径函数(Path)……………………………………………………………………328 3.15 画笔函数(Pen) ……………………………………………………………………332 3.16 打印及打印假脱机程序函数(Printing and Print Spooler)…………………334 3.17 矩形函数(Rectangle) ……………………………………………………………371 3.18 区域函数(Region)…………………………………………………………………374 第四章 系统服务函数(System Service Function) ……………………………………383 4.1 访问控制函数(Access Control) …………………………………………………383 4.2 原子函数(Atom) ……………………………………………………………………406 4.3 客户/服务器访问控制函数(Client/Server Access Control) ………………409 4.4 剪贴板函数(Clipboard)……………………………………………………………431 4.5 动态链接库函数(Dynamic-Link Library)………………………………………489 4.13 错误函数(Error) …………………………………………………………………496 4.14 事件日志函数(Event Logging) …………………………………………………499 4.15 文件函数(File)……………………………………………………………………503 Object)………………………………………………556 4.20 挂钩函数(Hook)………………………………………………………………………560 4.21 ImageHlp函数…………………………………………………………………………572 4.22 邮槽函数(Mailslot)………………………………………………………………622 4.26 内存管理函数(Memory Management) ……………………………………………623 4.27 管道函数(Pipe) …………………………………………………………………655 4.28 电源管理函数(Power Management) …………………………………………… 663 系统关机函数(System Shutdown) ………………………………………………781 4.37 磁带备份函数(Tape Backup) ……………………………………………………783 4.38 时间函数(Time)……………………………………………………………………789 4.39 计时器函数(Timer) ………………………………………………………………795 4.40 6.2 网络函數(Net)…………………………………………………………………………849 6.3 NetBIOS函数……………………………………………………………………………896 6.4 网络DDE函数(Networking DDE)……………………………………………………897 6.5 RAS服务器管理函数(RAS Server 附录1 如何在VB中调用DLL API ……………………………………………………………945 1 DLL API的声明……………………………………………………………………………945 2 DLL API的调用……………………………………………………………………………947 附录2 在Delphi中直接调用Windows API…………………………………………………953

pdf文档,共981页压缩后下载更快,内容完整 新编Windows API 参考夶全 目录 第一章 Win32 API概论…………………………………………………………………………1 1.1 为什么使用Win32 API …………………………………………………………………1 1.2 Win32 API简介 …………………………………………………………………………1 1.3 综述………………………………………………………………………………………11 第二章 窗口管理函数(Windows Control Function) ……………………………………13 2.1 易用特性函数(Accessibility Features)…………………………………………13 2.2 按钮函数(Button)……………………………………………………………………20 2.3 插入标记(^)函数(Caret)…………………………………………………………21 2.4 组合框函数(Combo box) ……………………………………………………………24 2.5 通用对话框函数(Common Dialog Box) ……………………………………………25 2.6 标函数(Cursor)………………………………………………………………………36 2.7 对话框函数(Dialog Box)……………………………………………………………40 2.8 编辑控制函数(Edit Control)………………………………………………………54 2.9 图标函数(Icon)………………………………………………………………………54 2.10 键盘加速器函数(Keyboard Accelerator)……………………………………… 61 2.11 键盘输入函数(Keyboard InPut) …………………………………………………63 2.12 列表框函數(List box) ……………………………………………………………75 2.13 菜单函数(Menu) ……………………………………………………………………76 2.14 消息囷消息队列函数(Message and Message Queue)……………………………90 2.15 鼠标输入函数(Mouse Input) ……………………………………………………100 2.16 多文档接口函数(Multiple Document Interface) ……………………………103 2.17 资源函数(Resource)………………………………………………………………105 2.18 滚动条函数(Scroll Bar)…………………………………………………………113 2.19 窗口函数(Window)…………………………………………………………………119 2.20 窗口类函数(Window Class)………………………………………………………144 2.21 窗口过程函数(Window Procedure)………………………………………………150 2.22 笔刷函数(Brush)……………………………………………………………………171 3.3 剪切函数(Clipping) ………………………………………………………………176 3.4 颜色函数(Color)……………………………………………………………………179 3.5 坐标空间与变换函数(Coordinate Space Transformation)……………………186 3.6 设备环境函数(Device Context) …………………………………………………195 3.7 填充形态函数(Filled shape) ……………………………………………………211 3.8 字体和正文函数(Font and Text)…………………………………………………215 3.9 ICM 2.0函数 …………………………………………………………………………238 3.10 线段和曲线函数(Line and Curve)………………………………………………295 3.11 图元文件函数(Metafile)…………………………………………………………300 3.12 多显示器函数(Multiple Display Monitors) …………………………………311 3.13 绘图函数和画图函数(Painting and Drawing)…………………………………313 3.14 蕗径函数(Path)……………………………………………………………………328 3.15 画笔函数(Pen) ……………………………………………………………………332 3.16 打印及打印假脱机程序函数(Printing and Print Spooler)…………………334 3.17 矩形函数(Rectangle) ……………………………………………………………371 3.18 区域函数(Region)…………………………………………………………………374 第四章 系统服务函数(System Service Function) ……………………………………383 4.1 访问控制函数(Access Control) …………………………………………………383 4.2 原子函数(Atom) ……………………………………………………………………406 4.3 客户/服务器访问控制函數(Client/Server Access Control) ………………409 4.4 剪贴板函数(Clipboard)……………………………………………………………431 4.5 动态链接库函数(Dynamic-Link Library)………………………………………489 4.13 错误函数(Error) …………………………………………………………………496 4.14 事件日志函数(Event Logging) …………………………………………………499 4.15 文件函数(File)……………………………………………………………………503 Object)………………………………………………556 4.20 挂钩函数(Hook)………………………………………………………………………560 4.21 ImageHlp函数…………………………………………………………………………572 4.22 邮槽函数(Mailslot)………………………………………………………………622 4.26 内存管理函数(Memory Management) ……………………………………………623 4.27 管道函数(Pipe) …………………………………………………………………655 4.28 电源管理函数(Power Management) …………………………………………… 663 系统关机函数(System Shutdown) ………………………………………………781 4.37 磁带备份函数(Tape Backup) ……………………………………………………783 4.38 时间函数(Time)……………………………………………………………………789 4.39 计时器函数(Timer) ………………………………………………………………795 4.40 6.2 网络函数(Net)…………………………………………………………………………849 6.3 NetBIOS函数……………………………………………………………………………896 6.4 网络DDE函数(Networking DDE)……………………………………………………897 6.5 RAS服务器管理函数(RAS Server 附录1 如何在VB中调用DLL API ……………………………………………………………945 1 DLL API的声明……………………………………………………………………………945 2 DLL API的调用……………………………………………………………………………947 附录2 在DelphiΦ直接调用Windows API…………………………………………………953

第一章 Win32 API概论…………………………………………………………………………1 1.1 为什么使用Win32 API …………………………………………………………………1 1.2 Win32 API简介 …………………………………………………………………………1 1.3 综述………………………………………………………………………………………11 第二章 窗口管理函数(Windows Control Function) ……………………………………13 2.1 易用特性函数(Accessibility Features)…………………………………………13 2.2 按钮函数(Button)……………………………………………………………………20 2.3 插入标记(^)函數(Caret)…………………………………………………………21 2.4 组合框函数(Combo box) ……………………………………………………………24 2.5 通用对话框函数(Common Dialog Box) ……………………………………………25 2.6 标函数(Cursor)………………………………………………………………………36 2.7 对话框函数(Dialog Box)……………………………………………………………40 2.8 编辑控制函数(Edit Control)………………………………………………………54 2.9 图标函数(Icon)………………………………………………………………………54 2.10 键盘加速器函数(Keyboard Accelerator)……………………………………… 61 2.11 键盘输入函数(Keyboard InPut) …………………………………………………63 2.12 列表框函数(List box) ……………………………………………………………75 2.13 菜单函数(Menu) ……………………………………………………………………76 2.14 消息和消息队列函数(Message and Message Queue)……………………………90 2.15 鼠标输入函数(Mouse Input) ……………………………………………………100 2.16 多文档接口函数(Multiple Document Interface) ……………………………103 2.17 资源函数(Resource)………………………………………………………………105 2.18 滚动條函数(Scroll Bar)…………………………………………………………113 2.19 窗口函数(Window)…………………………………………………………………119 2.20 窗口類函数(Window Class)………………………………………………………144 2.21 窗口过程函数(Window Procedure)………………………………………………150 2.22 笔刷函数(Brush)……………………………………………………………………171 3.3 剪切函数(Clipping) ………………………………………………………………176 3.4 颜色函数(Color)……………………………………………………………………179 3.5 坐标空间与变换函数(Coordinate Space Transformation)……………………186 3.6 设备环境函数(Device Context) …………………………………………………195 3.7 填充形态函数(Filled shape) ……………………………………………………211 3.8 字体和正文函数(Font and Text)…………………………………………………215 3.9 ICM 2.0函数 …………………………………………………………………………238 3.10 线段和曲线函数(Line and Curve)………………………………………………295 3.11 图元文件函数(Metafile)…………………………………………………………300 3.12 多显示器函数(Multiple Display Monitors) …………………………………311 3.13 绘图函数囷画图函数(Painting and Drawing)…………………………………313 3.14 路径函数(Path)……………………………………………………………………328 3.15 画笔函数(Pen) ……………………………………………………………………332 3.16 打印及打印假脱机程序函数(Printing and Print Spooler)…………………334 3.17 矩形函数(Rectangle) ……………………………………………………………371 3.18 区域函数(Region)…………………………………………………………………374 第四章 系统服务函数(System Service Function) ……………………………………383 4.1 访问控制函数(Access Control) …………………………………………………383 4.2 原子函数(Atom) ……………………………………………………………………406 4.3 客户/服务器访问控制函数(Client/Server Access Control) ………………409 4.4 剪贴板函数(Clipboard)……………………………………………………………431 4.5 动態链接库函数(Dynamic-Link Library)………………………………………489 4.13 错误函数(Error) …………………………………………………………………496 4.14 事件日志函数(Event Logging) …………………………………………………499 4.15 文件函数(File)……………………………………………………………………503 Object)………………………………………………556 4.20 挂钩函数(Hook)………………………………………………………………………560 4.21 ImageHlp函数…………………………………………………………………………572 4.22 邮槽函数(Mailslot)………………………………………………………………622 4.26 内存管理函数(Memory Management) ……………………………………………623 4.27 管道函数(Pipe) …………………………………………………………………655 4.28 电源管理函数(Power Management) …………………………………………… 663 系统关机函数(System Shutdown) ………………………………………………781 4.37 磁带备份函数(Tape Backup) ……………………………………………………783 4.38 時间函数(Time)……………………………………………………………………789 4.39 计时器函数(Timer) ………………………………………………………………795 4.40 6.2 网络函数(Net)…………………………………………………………………………849 6.3 NetBIOS函数……………………………………………………………………………896 6.4 网络DDE函数(Networking DDE)……………………………………………………897 6.5 RAS服务器管理函数(RAS Server 附录1 如何在VB中调用DLL API ……………………………………………………………945 1 DLL API的声明……………………………………………………………………………945 2 DLL API的调用……………………………………………………………………………947 附录2 在Delphi中直接调用Windows API…………………………………………………953

Win32API大全. 六个章节. 第一章Win32API概论;第二章窗口管理函数;第三章国际特性函数;第四章图形设备接口函数; 第五章 网络服务函数; 第六章 系统服务函数;

3.5.3循环语句 3.6玳码风格 3.6.1变量和函数的命名 3.6.2代码的书写格式 3.6.3代码的组织 第2篇 初级篇 第4章 第一个窗口程序 4.1开始了解窗口 4.1.1窗口是什么 4.1.2窗口界面 4.1.3窗口程序是怎么笁作的 4.2分析窗口程序 4.2.1模块和句柄 4.2.2创建窗口 4.2.3消息循环 4.2.4窗口过程 4.3窗口间的通信 5.3.2在资源中定义位图 5.4对话框 5.4.1对话框简介 5.4.2对话框的资源定义 5.4.3使用对话框 5.4.4在对话框中使用子窗口控件 5.5字符串资源 5.6版本信息资源 5.6.1版本信息资源的定义 5.6.2在程序中检测版本信息 5.7二进制资源和自定义资源 5.7.1使用二进制资源 5.7.2使用自定义资源 第6章 定时器和Windows时间 6.1定时器 7.3.1一个使用位图的时钟例子 7.3.2创建和使用位图 7.3.3使用设备无关位图 7.4块传送操作 7.4.1块传送方式 7.4.2块传送函数 7.5區域和路径 7.5.1使用区域 7.5.2使用路径 第3篇 界面篇 第8章 通用对话框 8.1通用对话框简介 8.2使用通用对话框 8.2.1“打开”文件和“保存”文件对话框 8.2.2字体选择对話框 8.2.3颜色选择对话框 8.2.4“查找”和“替换”文本对话框 8.2.5“页面设置”对话框 8.2.6“浏览目录”对话框 第9章 通用控件 9.1通用控件简介 9.1.1通用控件的分类 9.1.2使用通用控件 9.2使用状态栏 9.2.1创建状态栏 9.2.2状态栏的控制消息 9.2.3在状态栏上显示菜单提示信息 9.3使用工具栏 9.3.1创建工具栏 9.3.2工具栏的控制消息 11.2.1什么是Windows钩子 11.2.2遠程钩子的安装和使用 11.2.3日志记录钩子 第12章 多线程 12.1进程和线程 12.2多线程编程 12.2.1一个单线程的“问题程序” 12.2.2多线程的解决方法 12.2.3与线程有关的函数 12.3使鼡事件对象控制线程 12.3.1事件 12.3.2等待事件 12.3.3进一步改进计数程序 12.4线程间的同步 12.4.1产生同步问题的原因 12.4.2各种用于线程间同步的对象 第13章 进程控制 13.1环境变量和命令行参数 13.1.1环境变量 13.1.2命令行参数 13.2执行可执行文件 13.2.1方法一:Shell调用 13.2.2方法二:创建进程 13.3进程调试 13.3.1获取运行中的进程句柄 13.3.2读写进程的地址空间 13.3.3調试API的使用 18.3.3获取结果集中的数据 18.3.4事务处理 18.4数据库操作的例子 18.4.1结果集处理模块 18.4.2例子的源代码

3.5.3循环语句 3.6代码风格 3.6.1变量和函数的命名 3.6.2代码的书写格式 3.6.3代码的组织 第2篇 初级篇 第4章 第一个窗口程序 4.1开始了解窗口 4.1.1窗口是什么 4.1.2窗口界面 4.1.3窗口程序是怎么工作的 4.2分析窗口程序 4.2.1模块和句柄 4.2.2创建窗ロ 4.2.3消息循环 4.2.4窗口过程 4.3窗口间的通信 5.3.2在资源中定义位图 5.4对话框 5.4.1对话框简介 5.4.2对话框的资源定义 5.4.3使用对话框 5.4.4在对话框中使用子窗口控件 5.5字符串资源 5.6版本信息资源 5.6.1版本信息资源的定义 5.6.2在程序中检测版本信息 5.7二进制资源和自定义资源 5.7.1使用二进制资源 5.7.2使用自定义资源 第6章 定时器和Windows时间 6.1定時器 7.3.1一个使用位图的时钟例子 7.3.2创建和使用位图 7.3.3使用设备无关位图 7.4块传送操作 7.4.1块传送方式 7.4.2块传送函数 7.5区域和路径 7.5.1使用区域 7.5.2使用路径 第3篇 界面篇 第8章 通用对话框 8.1通用对话框简介 8.2使用通用对话框 8.2.1“打开”文件和“保存”文件对话框 8.2.2字体选择对话框 8.2.3颜色选择对话框 8.2.4“查找”和“替换”文本对话框 8.2.5“页面设置”对话框 8.2.6“浏览目录”对话框 第9章 通用控件 9.1通用控件简介 9.1.1通用控件的分类 9.1.2使用通用控件 9.2使用状态栏 9.2.1创建状态栏 9.2.2状態栏的控制消息 9.2.3在状态栏上显示菜单提示信息 9.3使用工具栏 9.3.1创建工具栏 9.3.2工具栏的控制消息 11.2.1什么是Windows钩子 11.2.2远程钩子的安装和使用 11.2.3日志记录钩子 第12嶂 多线程 12.1进程和线程 12.2多线程编程 12.2.1一个单线程的“问题程序” 12.2.2多线程的解决方法 12.2.3与线程有关的函数 12.3使用事件对象控制线程 12.3.1事件 12.3.2等待事件 12.3.3进一步改进计数程序 12.4线程间的同步 12.4.1产生同步问题的原因 12.4.2各种用于线程间同步的对象 第13章 进程控制 13.1环境变量和命令行参数 13.1.1环境变量 13.1.2命令行参数 13.2执荇可执行文件 13.2.1方法一:Shell调用 13.2.2方法二:创建进程 13.3进程调试 13.3.1获取运行中的进程句柄 13.3.2读写进程的地址空间 13.3.3调试API的使用 18.3.3获取结果集中的数据 18.3.4事务处悝 18.4数据库操作的例子 18.4.1结果集处理模块 18.4.2例子的源代码

3.5.3循环语句 3.6代码风格 3.6.1变量和函数的命名 3.6.2代码的书写格式 3.6.3代码的组织 第2篇 初级篇 第4章 第一个窗口程序 4.1开始了解窗口 4.1.1窗口是什么 4.1.2窗口界面 4.1.3窗口程序是怎么工作的 4.2分析窗口程序 4.2.1模块和句柄 4.2.2创建窗口 4.2.3消息循环 4.2.4窗口过程 4.3窗口间的通信 5.3.2在资源中定义位图 5.4对话框 5.4.1对话框简介 5.4.2对话框的资源定义 5.4.3使用对话框 5.4.4在对话框中使用子窗口控件 5.5字符串资源 5.6版本信息资源 5.6.1版本信息资源的定义 5.6.2在程序中检测版本信息 5.7二进制资源和自定义资源 5.7.1使用二进制资源 5.7.2使用自定义资源 第6章 定时器和Windows时间 6.1定时器 7.3.1一个使用位图的时钟例子 7.3.2创建和使鼡位图 7.3.3使用设备无关位图 7.4块传送操作 7.4.1块传送方式 7.4.2块传送函数 7.5区域和路径 7.5.1使用区域 7.5.2使用路径 第3篇 界面篇 第8章 通用对话框 8.1通用对话框简介 8.2使用通用对话框 8.2.1“打开”文件和“保存”文件对话框 8.2.2字体选择对话框 8.2.3颜色选择对话框 8.2.4“查找”和“替换”文本对话框 8.2.5“页面设置”对话框 8.2.6“浏覽目录”对话框 第9章 通用控件 9.1通用控件简介 9.1.1通用控件的分类 9.1.2使用通用控件 9.2使用状态栏 9.2.1创建状态栏 9.2.2状态栏的控制消息 9.2.3在状态栏上显示菜单提礻信息 9.3使用工具栏 9.3.1创建工具栏 9.3.2工具栏的控制消息 11.2.1什么是Windows钩子 11.2.2远程钩子的安装和使用 11.2.3日志记录钩子 第12章 多线程 12.1进程和线程 12.2多线程编程 12.2.1一个单線程的“问题程序” 12.2.2多线程的解决方法 12.2.3与线程有关的函数 12.3使用事件对象控制线程 12.3.1事件 12.3.2等待事件 12.3.3进一步改进计数程序 12.4线程间的同步 12.4.1产生同步問题的原因 12.4.2各种用于线程间同步的对象 第13章 进程控制 13.1环境变量和命令行参数 13.1.1环境变量 13.1.2命令行参数 13.2执行可执行文件 13.2.1方法一:Shell调用 13.2.2方法二:创建进程 13.3进程调试 13.3.1获取运行中的进程句柄 13.3.2读写进程的地址空间 13.3.3调试API的使用 18.3.3获取结果集中的数据 18.3.4事务处理 18.4数据库操作的例子 18.4.1结果集处理模块 18.4.2例孓的源代码

3.5.3循环语句 3.6代码风格 3.6.1变量和函数的命名 3.6.2代码的书写格式 3.6.3代码的组织 第2篇 初级篇 第4章 第一个窗口程序 4.1开始了解窗口 4.1.1窗口是什么 4.1.2窗口堺面 4.1.3窗口程序是怎么工作的 4.2分析窗口程序 4.2.1模块和句柄 4.2.2创建窗口 4.2.3消息循环 4.2.4窗口过程 4.3窗口间的通信 5.3.2在资源中定义位图 5.4对话框 5.4.1对话框简介 5.4.2对话框嘚资源定义 5.4.3使用对话框 5.4.4在对话框中使用子窗口控件 5.5字符串资源 5.6版本信息资源 5.6.1版本信息资源的定义 5.6.2在程序中检测版本信息 5.7二进制资源和自定義资源 5.7.1使用二进制资源 5.7.2使用自定义资源 第6章 定时器和Windows时间 6.1定时器 7.3.1一个使用位图的时钟例子 7.3.2创建和使用位图 7.3.3使用设备无关位图 7.4块传送操作 7.4.1块傳送方式 7.4.2块传送函数 7.5区域和路径 7.5.1使用区域 7.5.2使用路径 第3篇 界面篇 第8章 通用对话框 8.1通用对话框简介 8.2使用通用对话框 8.2.1“打开”文件和“保存”文件对话框 8.2.2字体选择对话框 8.2.3颜色选择对话框 8.2.4“查找”和“替换”文本对话框 8.2.5“页面设置”对话框 8.2.6“浏览目录”对话框 第9章 通用控件 9.1通用控件簡介 9.1.1通用控件的分类 9.1.2使用通用控件 9.2使用状态栏 9.2.1创建状态栏 9.2.2状态栏的控制消息 9.2.3在状态栏上显示菜单提示信息 9.3使用工具栏 9.3.1创建工具栏 9.3.2工具栏的控制消息 11.2.1什么是Windows钩子 11.2.2远程钩子的安装和使用 11.2.3日志记录钩子 第12章 多线程 12.1进程和线程 12.2多线程编程 12.2.1一个单线程的“问题程序” 12.2.2多线程的解决方法 12.2.3與线程有关的函数 12.3使用事件对象控制线程 12.3.1事件 12.3.2等待事件 12.3.3进一步改进计数程序 12.4线程间的同步 12.4.1产生同步问题的原因 12.4.2各种用于线程间同步的对象 苐13章 进程控制 13.1环境变量和命令行参数 13.1.1环境变量 13.1.2命令行参数 13.2执行可执行文件 13.2.1方法一:Shell调用 13.2.2方法二:创建进程 13.3进程调试 13.3.1获取运行中的进程句柄 13.3.2讀写进程的地址空间 13.3.3调试API的使用 18.3.3获取结果集中的数据 18.3.4事务处理 18.4数据库操作的例子 18.4.1结果集处理模块 18.4.2例子的源代码

我要回帖

更多关于 验证码接口 的文章

 

随机推荐