ZetCode

Windows API 简介

最后修改于 2023 年 10 月 18 日

这是一个 Windows API 教程。本教程将教你使用 C 编程语言进行 Windows API 编程的基础知识和更高级的主题。它不涵盖 MFC。(Microsoft Foundation Classes 是一个广泛用于在 Windows 上开发 C++ 应用程序的 C++ 库。)本教程已在 Windows 7 上创建和测试。示例使用 Pelles C 编译器 构建。如果你计划阅读本教程,建议你下载并安装此编译器。(它是一个免费软件。)如果你想使用其他编译器,请确保它支持 C99 标准。

Windows API

Windows API 是用于创建 Windows 应用程序的应用程序编程接口。为了创建 Windows 应用程序,我们必须下载 Windows SDK。(以前称为 Platform SDK。)SDK(软件开发工具包)包含头文件、库、示例、文档和用于使用 Windows API 开发应用程序的工具。Windows API 是为 C 和 C++ 编程语言创建的。它是创建 Windows 应用程序的最直接方法。(如果我们安装 Pelles C,则已包含 Windows SDK。)

Windows API 可以分为几个领域

基本服务提供对 Windows 上基本资源的访问。这些包括文件系统、设备、进程、线程、注册表或错误处理。安全领域提供用于身份验证、授权、加密和其他安全相关任务的函数、接口、对象和其他编程元素。图形子系统提供将图形内容输出到监视器、打印机和其他输出设备的功能。用户界面提供创建窗口和控件的功能。多媒体组件提供用于处理视频、声音和输入设备的工具。Windows shell 接口的功能允许应用程序访问操作系统 shell 提供的功能。网络服务提供对 Windows OS 网络功能的访问。

Windows API 是 Windows 操作系统编程接口的抽象规范。它由函数、联合、结构、数据类型、宏、常量和其他编程元素的声明组成。Windows API 主要由 MSDN(Microsoft 开发人员网络)描述,位于 Windows C 标头中。Windows API 函数的官方实现位于动态链接库 (DLL) 中。例如,Windows 系统目录中的 kernel32.dlluser32.dllgdi32.dllshell32.dll。有 Windows API 的第三方实现:最值得注意的是 Wine 项目和 ReactOS 项目。

Windows API 是一个动态实体。函数数量随着 Windows OS 的每个新版本和新的服务包而不断增长。服务器版本和桌面版本的操作系统之间也存在一些重要的区别。某些功能未正式记录。

Pelles C

Pelles C 是一个出色的 C 编译器和 C 编程语言的集成开发环境 (IDE)。它支持 32 位 Windows (x86) 和 64 位 Windows (x64)。它实现了 C99 和 C11 标准。Pelles C 具有集成的资源编辑器、位图、图标和光标编辑器以及十六进制转储编辑器。它由瑞典开发人员 Pelle Orinius 开发。它附带 Windows SDK,因此我们可以立即开始创建 Windows 应用程序,无需进一步安装。

Pelles C 是一个免费软件。我们可以从以下链接下载 Pelles C:Pelles C 下载

无目标架构错误

为了创建 Windows API 程序,我们必须启用 Microsoft 扩展。它们默认未启用;因此,编译器会生成以下错误消息:fatal error #1014: #error: "No target architecture"。要启用 Microsoft 扩展,我们进入项目选项并选择“编译器”选项卡。在此选项卡中,我们勾选“启用 Microsoft 扩展”框。

MSDN

MSDN(Microsoft 开发人员网络)是 Windows 开发的中心门户。它是一个庞大的材料集合,与使用 Microsoft 工具开发 Windows 应用程序有关。(不包括 Qt4 或 Java Swing 等第三方软件。)它是 Windows API 最完整的参考。以下两个链接是 Windows API 参考的良好入口点: 桌面应用程序开发文档 Windows API 列表

本章是 Windows API 的简介。