windows API 分类
2017-05-06 14:34
351 查看
WIndows API分类
基础服务 (Base Services)
提供对windows系统可用的基础资源的访问接口:他们都是以dll方式提供
大家都知道 基础服务 不是微软的强项 微软的强项是 图形设备接口
文件系统( file sysytem)
读写、删除、新、增外部设备(device)
打开、关闭进程( process)
进程代表一块空间我们的操作系统的一个单位(虚拟内存把运行的这个进程打包成一个盒子,一整块内存)然后在丢到物理内存,(空间) 以上都是从OS层面解析
进程代表一个运行的程序
操作 启动进程 关闭进程
线程( thread)
线程代表状态 物理内存只需要保存 内存空间和状态 就能实现多个程序的伪同步多任务伪实时
以上都是从OS层面解析
启动,关闭,销毁
注册表( windows registr)
是配置表 存在配置系统当中作用 控制操作系统的配置
API是用来 注册表的增删改查
错误处理机制(error handling)
功能接口位于,32位windows下的kernel32.dll和advapi32.dll中.图形设备接口( GDI 有点过时)
功能 输出图形到显示器、打印机以及其他外部输出设备优点没有win系统都会有这个接口
多用于做界面,游戏不用因为速度并不快
他位于32位 windows下的gdi32.dll
图形化用户界面( GUI)
创建和管理屏幕和大多数基本控件(control),比如按钮和滚动条接收鼠标和键盘输入,以及其他与GUI有关的功能
以上都是从OS层面解析接口位于user32.dll 从xp版本之后,基本控件和通用对话框(Common Control Library)的调用接口放在comctl32.dlll
通用对话框链接库( Common Dialg Box Library)
打开、保存文件对话框、颜色对话框和字体对话框等等32位windows下comdlg32.dll中。它被归类为 User Interface API 之下
通用控件链接库( COmmon Control Library)
提供一些高级控件状态栏(status bar)
进度条(progress bars)
工具栏( tolbar)
标签( tab)
位于32位 comct132.dll中。。它被归类为User Interface API之下
Windows外壳( Windows Shell)
作为 win API的组成部分,不仅允许应用程序访问Windows外壳提供的工,还对之有所改进和增强。没有界面的操作,,但是用这个的话 就不如用 Linux
位于32位 shell32.dll中,他被归类为User Interface API之下。
网络服务( Network Services)
为了访问操作系统提供的多种网络功能接口。他包括NetBIOS、Winsock、NetDDE及RPC等。由于他的一些非平台性 不好用。
多媒体相关API
不属于 windows API 提供了高性能的绘图功能自从Windows 95 OSR2以来,Microsoft把DirectX API作为Windows安装的一部分。DirectX提供一组松散相关的多媒体和游戏服务,包括:
Direct3D可以作为OpenGL的替代,来访问3D加速硬件。
DirectDraw提供硬件加速2D framebuffer(帧缓冲)访问接口。自DirectX 9以来,相比Direct3D更倾向于后者,因为Direct3D提供更全面的高性能图形功能(毕竟2D渲染只是3D渲染的(不严格)子集)。已被Direct2D替代。
DirectSound提供底层次的硬件加速声卡访问。被XAudio替代。
DirectInput用来与输入设备(摇杆和gamepad)进行通信。已被DirectX 9中引入的XInput所替代。
DirectPlay提供一个多人游戏的架构(multiplayer gaming infrastructure)。它已经被DirectX 9所替代,Microsoft不建议用它开发游戏。
DirectShow可以创建和运行通用的多媒体管道(generic multimedia pipelines)。它可以与GStreamer框架相媲美,并且经常被用来渲染游戏视频和创建媒体播放器(Windows
Media Player及诸如FFDShow之类的编解码器正是基于此;但在Windows Vista及更高版本中,DirectShow被Media
Foundation替代)。不建议用DirectShow开发游戏。
DirectMusic提供类似MIDI的功能。与DirectSound一起被XAudio替代。
封装库
MFC、ATL、WTL都属于微软OWL(已死)、VCL属于Borland
微软利用许多更底层的Windows API函数,开发出许多封装库(wrapper),让应用程序以更抽象的方式与Windows API进行交互。MFC(Microsoft
Foundation Class Library)用C++
类别来封装Windows API的功能,因而允许用更为面向对象的方式与API进行交互。ATL(Active
Template Library)是对COM的面向模板(template oriented)的封装。WTL(Windows
Template Library)作为ATL的增强,被用来作为MFC的轻型的替代物。
其他著名的封装库是Borland公司的产品,为了与MFC竞争而推出的OWL(Object Windows Library)提供了类似的面向对象封装。不久Borland又推出VCL(Visual
Component Library)来取而代之。
大多数的Windows
程序框架(application framework)是对Windows API的封装,因而.NET Framework、Java以及其他在Windows下的程序语言,都是(或者包含)封装库。
如果使用微软自带的控件
优点开发快
缺点都一个球样
相关文章推荐
- 未分类--Windows API--DWordToChar
- 未分类--Windows API--GetTickCount
- 未分类--Windows API--VariantClear
- Windows API函数大全 分类速查
- 未分类--Windows API--RegCreateKeyEx
- 未分类--Windows API--CallCPLEntry16
- 未分类--Windows API--CPlApplet
- 未分类--Windows API--_bstr_t::_bstr_t
- 三:Windows API的功能分类
- 未分类--Windows API--AssocCreateForClasses
- 未分类--Windows API--CanShareFolderW
- 未分类--Windows API--CreateEnvironmentBlock
- 未分类--Windows API--SafeArrayDestroy
- 未分类--Windows API--AddMRUStringW
- 未分类--Windows API--CreateHardwareEventMoniker
- 未分类--Windows API--SysFreeString
- 未分类--Windows API--SafeArrayGetElement
- windows API 分类
- 未分类--Windows API--CIDLData_CreateFromIDArray
- 未分类--Windows API--SysAllocString