admin 管理员组文章数量: 887007
1. 什么是Windows API
Windows的API(Application Programming Interface,应用程序编程接口),是Windows操作系统提供
给应用程序的大量函数,开发者调用这些函数,犹如“积木块”一样,可以搭建出各种界面丰富,功能灵
活的应用程序。所以可以认为API函数是构筑整个Windows的基石,在它的下面是Windows的操作系统核心,
而它的上面则是所有华丽的Windows应用程序。
应用程序
Windows API 用户模式
-------------------------
操作系统内核 内核模式
硬件
2. 如何学习Windows API?
Windows API = 学函数
3. Windows API在线文档
MSDN这是微软公司面向软件开发者的一种信息服务。MSDN实际上是一个以Visual Studio和Windows
平台为核心整合的开发虚拟社区,包括技术文档、在线电子教程、网络虚拟实验室、微软产品下载等等一系列服务。
网址:https://msdn.microsoft/library
4. Windows API分类
Windows API就是Windows应用程序接口,是针对Microsoft Windows操作系统家族的系统编程接口,
这样的系统包括Windows 8.1 Windows8 Windows7等几乎所有版本。WIN32 API也是Microsoft Windows
32位平台的应用程序编程接口。
Windows API包括几千个可调用的函数,大致可以分为几类:
基础服务
组件服务
用户界面服务
图形多媒体服务
消息和协作
网络
Web服务
5. 第一个HellWorld应用程序
#include <windows.h>
int WINAPI WinMain(HINSTANCE hlnstance, HINSTANCE hPrevlnstance, LPSTR lpCmdLine, int nCmdShow)
{
MessageBox(NULL, L"第一个Win32程序", L"hello world", MB_OK);
return 0;
}
6. 入口函数WinMain详解
(1)类似于C程序的main函数,Win32应用程序也有一个入口函数WinMain,改函数被系统自动调用,
函数原型如下:
int WINAPI WinMain(
HINSTANCE hlnstance, //应用程序当前实例的句柄
HINSTANCE hPrevlnstance, //应用程序先前实例的句柄。同一个程序打开两次,出现两个窗口
//第一次打开的窗口就是先前实例的窗口。对于一个32位程序,该参数
总为NULL
LPSTR lpCmdLine, //命令行的字符串的指针,类似C语言中的argc argv,只不过这里只用了一个参数
就可以获得参数的个数和内容
int nShowCmd //窗口显示方式、默认为SW_SHOWDEFAULT
);
(2)奇怪的数据类型?
符号 原型 说明
WINAPI #define WINAPI __stdcall 标准调用约定、__stdcall是专门用来调用Win API的
HINSTANCE struct HINSTANCE__ {int unused;}
typedef HINSTANCE__ * HINSTANCE 就是一个结构体类型指针
LPSTR typedef CHAR *LPSTR; 就是char * 类型
HANDLE typedef void * HANDLE; 就是一个void类型指针
7. 应用程序实例句柄
WinMain函数的第一个参数hlnstance就是可执行文件的实例句柄,实际上是个内存地址,它指出系统在何处把
EXE文件装载入进程的地址空间。
8.Windows窗口程序简介
目前开发Windows窗口程序的主流技术有以下:
技术 简介 语言
Win32 API Windows平台底层API、效率高、难度较高 C++
MFC框架 微软基础类库(Microsoft Fundation Class,MFC) C++
对Win32 API的面向对象封装、难度较高
QT框架 跨平台 UNIX LINUX WINDOWS C++
WPF框架 C#
Windows form C# VB
版权声明:本文标题:Windows API开发 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1733297016h1572620.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论