8、Windows API 概要

简介: 一、Windows API 的功能分类 1、系统基本服务 文件系统:对文件的操作等;磁盘分卷的管理等。 内存管理:内存分配等,分页机制。 进程、线程和模块 设备IO、驱动程序控制 调试与错误处理 Windows系统信息:包括注册表操作,及其它基本信息。

一、Windows API 的功能分类

1、系统基本服务

文件系统:对文件的操作等;磁盘分卷的管理等。

内存管理:内存分配等,分页机制。

进程、线程和模块

设备IO、驱动程序控制

调试与错误处理

Windows系统信息:包括注册表操作,及其它基本信息。

进程间通信:共享文件,消息,邮槽,管道,网络共享

定时器与消息机制

2、系统管理

管理控制台接口,程序安装,系统恢复,任务调度等。

3、用户界面

包括两方面:Windows Shell和Windows图形用户界面

4、图像和多媒体

包括GDI,OpenGL,DircetX等.

5、网络

TCP/UDP Socket,HTTP等。

6、系统安全

系统的授权与认证,登录,权限管理,加密,安全管理策略等内容。

7、其它

如数据存储和访问,数据库

消息与协作

Web开发

二、核心DLL

Kernel32.dll系统基本服务的API

User32.dll 图形用户界面API

Gdi32.dll Windows图形引擎中的接口函数,应用程序设计接口

Windows系统的C标准库函数接口主要存在于crtdll.dll中。(c runtime)

三、Unicode和多字节

 Unicode:16位来表示一个字符,共65535种字符。

 传统字符集Windows ASNI:使用8位或相邻的两个8位数据组合在一起来表示特殊的语言字符。Windows采用ASNI字符的扩展方式,如果一个字节是负数,则将其后续的了一个字节组合在一起表示一个字符。这种编码方式也称为“多字节”字符集。

wps_clip_image-2056

LPSTR   A 32-bit pointer to a character string.

LPTSTR  A 32-bit pointer to a character string that is portable for Unicode and DBCS.

LPWSTR  A 32-bit pointer to a string of 16-bit Unicode characters, which MAY be null-terminated.

DBCS    double-byte character set

wps_clip_image-30894

  Unicode与ASCII的转换 

 WideCharToMultiByte   Unicode > ASCII 

 MultiByteToWideChar   ASCII  > Unicode  

 UnicodeToBytes

参考

[1] 精通Windows API 函数、接口、编程实例

目录
相关文章
|
7月前
|
监控 编译器 API
[笔记]Windows核心编程《二十二》注入DLL和拦截API(一)
[笔记]Windows核心编程《二十二》注入DLL和拦截API
147 0
|
4月前
|
API Python Windows
python3应用windows api对后台程序窗口及桌面截图并保存的方法
python3应用windows api对后台程序窗口及桌面截图并保存的方法
110 1
|
7月前
|
存储 缓存 API
[总结]Windows Crypto API 自动更新根证书问题原因及解决方案
[总结]Windows Crypto API 自动更新根证书问题原因及解决方案
|
7月前
|
API Windows
[笔记]Windows核心编程《番外篇》常用的NT API及使用示例
[笔记]Windows核心编程《番外篇》常用的NT API及使用示例
|
7月前
|
安全 API Windows
[笔记]Windows核心编程《二十二》注入DLL和拦截API(三)
[笔记]Windows核心编程《二十二》注入DLL和拦截API(三)
139 0
|
7月前
|
消息中间件 编解码 安全
[笔记]Windows核心编程《二十二》注入DLL和拦截API(二)
[笔记]Windows核心编程《二十二》注入DLL和拦截API(二)
104 0
|
7月前
|
API C++ Windows
Windows API Hooking 学习
Windows API Hooking 学习
|
11月前
|
缓存 安全 Unix
C/C++使用Windows的API实现共享内存以及同步
C/C++使用Windows的API实现共享内存以及同步
783 0
|
11月前
|
安全 Java 编译器
如何用 Go 调用 Windows API | 青训营笔记
如何用 Go 调用 Windows API | 青训营笔记
832 0
|
12月前
|
API Windows
刘金玉的零基础VB教程073期:windows API使用入门 sleep
刘金玉的零基础VB教程073期:windows API使用入门 sleep
136 0