API函数速查

Window 函数
AdjustWindowRect:该函数依据所需客户矩形的大小,计算需要的窗日矩形的大小。计算出的窗口矩形随后可以传递给CreateWindow函数,用于

创建一个客户区所需大小的窗口。
AdjustWindowRectEx:该函数依据所需客户矩形大小,计算需要的窗口矩形的大小。计算出的窗口矩形随后可以传送给CreateWindowEx函数,用于创建一个客户区所需大小的窗口。
AnimateWindow:显示隐藏窗体,从左到右打开窗体,从右到左,淡出窗体等功能。
ArrangeIconicWindows:排列一个父窗口的最小化子窗口(在vb里使用:用于在桌面排列图标,用GetDesktopWindow函数获得桌面窗口的一个句柄)
BeginDeferWindowPos:该函数为一个多窗口位置结构分配内存并且返回该结构的句柄。
BringWindowToTop:该函数将指定的窗口设置到Z序的顶部。如果窗口为顶层窗口,则该窗口被激活;如果窗口为了窗口,则相应的顶级父窗口被激活。

CascadeWindows:该函数层叠排列指定父窗口的各指定子窗口
ChildWindowFromPoint:返回父窗口中包含了指定点的第一个子窗口的柄
ChildWindowFromPointEx:返回当前屏幕坐标点下面的子窗口名柄
CloseWindow:该函数最小化指定的窗口,但并不销毁该窗口
CreateWindow:该函数创建一个重叠式窗口、弹出式窗口或子窗口。它指定窗口类,窗口标题,窗口风格,以及窗口的初始位置及大小(可选的)。该函数也指定该窗口的父窗口或所属窗口(如果存在的话),及窗口的菜单。若要使用除CreateWindow函数支持的风格外的扩展风格,则使用CreateWindowEx函数代替CreateWindow函数。
CreateWindowEx:该函数创建一个具有扩展风格的重叠式窗口、弹出式窗口或子窗口,其他与CreateWindow函数相同。
DeferWindowPos:该函数为指定的窗口更新指定的多窗口位置结构,然后函数返回该更新结构的句柄。EndDeferWindowPos函数使用该结构内的信息同时改变一些窗口的位置和大小。该结构由BeginDeferWindowPos函数创建。
DestroyWindow:该函数销毁指定的窗口。
EnableWindow:该函数允许或禁止指定的窗口或控制接受鼠标输入或键盘输入。当输入被禁止时窗口不能接收鼠标单击和按键等类输入;当输入允许时,窗口接受所有的输入。
EndDeferWindowPos:该函数在一个单一的屏幕刷新周期内同时更新一个或多个窗口的位置和大小
EnumChildProc:该函数是由应用程序定义的,与函数EnumChildWindows一起使用的回调函数。它接收子窗口句柄。
EnumChildWindows:可以枚举一个父窗口的所有子窗口
EnumThreadWindows:该函数枚举所有与一个线程有关的非子窗口。办法是先将句柄传给每一个窗口,随后传送给应用程序定义的回调函数。

EnumThreadWindows函数继续到所有窗口枚举完为止或回调函数返回FALSE为止。要枚举一个特定窗口的所有子窗口;使用EnumChjdwjndows函数。
EnumThreadWndProc:该函数枚举所有与一个线程相关联的非子窗口,办法是先将句柄传送给每一个窗口,随后传送给应用程序定义的回调函数。
EnumWindows:该函数枚举所有屏幕上的顶层窗口,办法是先将句柄传给每一个窗口,然后再传送给应用程序定义的回调函数。
EnumWindowsProc::该函数是一个与EnumWindows或EnumDesktopWindows一起使用的应用程序定义的回调函数。它接收顶层窗口句柄
FindWindow:该函数获得一个顶层窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数不查找子窗口。在查找时不区分大小写。
FindWindowEx:该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始。在查找时不区分大小写。
GetClientRect:该函数获取窗口客户区的坐标。客户区坐标指定客户区的左上角和右下角。由于客户区坐标是相对子窗口客户区的左上角而言的,因此左上角坐标为(0,0)
GetDesktopWindow:该函数返回桌面窗口的句柄。桌面窗口覆盖整个屏幕。桌面窗口是一个要在其上绘制所有的图标和其他窗口的区域。
GetForegroundWindow:该函数返回前台窗口(用户当前工作的窗口)。系统分配给产生前台窗口的线程一个稍高一点的优先级。

GetLastActivePopup:该函数确定指定窗口中的哪一个弹出式窗口是最近活动的窗口。
GetNextWindow:该函数返回z序中的前一个或后一个窗口的句柄。
GetParent:该函数获得一个指定子窗口的父窗口句柄。
GetTopWindow:该函数检查与特定父窗口相联的子窗口z序,并返回在z序顶部的子窗口的句柄。
GetWindow:该函数返回与指定窗口有特定关系(如Z序或所有者)的窗口句柄。
GetWindowPlacement:该函数返回指定窗口的显示状态以及被恢复的、最大化的和最小化的窗口位置。

GetWindowRect:该函数返回指定窗口的边框矩形的尺寸。该尺寸以相对于屏幕坐标左上角的屏幕坐标给出。
GetWindowText:该函数将指定窗口的标题条文本(如果存在)拷贝到一个缓存区内。
GetWindowTextLength:该函数返回指定窗口的标题文本(如果存在)的字符长度。如果指定窗口是一个控制,函数将返回控制内文本的长度。

但是GetWindowTextLength函数不能返回在其他应用程序中的控制的文本长度
GetWindowThreadProcessId:获取与指定窗口关联在一起的一个进程和线程标识符
IsChild:该函数测试一个窗口是否是指定父窗口的子窗口或后代窗口。
IsIconic:该函数确定给定窗口是否是最小化(图标化)的窗口。
IsWindow:该函数确定给定的窗口句柄是否识别一个已存在的窗口。
IsWindowUnicode:该函数确定指定的窗口是否是一个本地Unicode窗口。
IsWindowVisible:该函数获得给定窗口的可视状态。
IsZoomed:该函数确定窗口是否是最大化的窗口。
MoveWindow:该函数改变指定窗口的位置和尺寸。
OpenIcon:恢复一个最小化的程序,并将其激活
SetForegroundWindow:该函数将创建指定窗口的线程设置到前台,并且激活该窗口。系统给创建前台窗口的线程分配的权限稍高于其他线程。
SetParent:该函数改变指定子窗口的父窗口。
SetWindowLong:该函数改变指定窗口的属性。
SetWindowPlacement:该函数设置指定窗口的显示状态和恢复,最大化,最小化位置。
SetWindowPos:该函数改变一个子窗口,弹出式窗口式顶层窗口的尺寸,位置和Z序
SetWindowText:该函数改变指定窗口的标题栏的文本内容(如果窗口有标题栏)。
ShowOwnedPopups:该函数显示或隐藏属于指定窗口的所有弹出式窗口。
ShowWindow:该函数设置指定窗口的显示状态。
ShowWindowAsync:该函数设置由不同线程产生的窗口的显示状态。
TileWindows:该函数并到显示指定父窗口的各指定子窗口。
WindowFromPoint:该函数获得包含指定点的窗口的句柄。
WinMain:该函数被系统调用,作为一个32位应用程序的入口点。

坐标、屏幕、(物理坐标和逻辑坐标之间的)映射函数
ClientToScreen:判断窗口内以客户区坐标表示的一个点的屏幕坐标
CombineTransform:驱动世界转换。它相当于依顺序进行两次转换
DPtoLP:将点阵从设备坐标转换到专用设备场景逻辑坐标
GetCurrentPositionEx:在指定的设备场景中取得当前的画笔位置
GetGraphicsMode:确定是否允许增强图形模式(世界转换)
GetMapMode:为特定设备场景调入映象模式
GetViewportExtEx:获取设备场景视口(viewport)范围
GetViewportOrgEx:获取设备场景视口起点
GetWindowExtEx:获取指定设备场景的窗口范围
GetWindowOrgEx:获取指定设备场景的逻辑窗口的起点
GetWorldTransform:如果有世界转换,为设备场景获取当前世界转换
LPtoDP:将点阵从指定设备场景逻辑坐标转换为设备坐标
MapWindowPoints:将一个窗口客户区坐标的点转换到另一窗口的客户区坐标系统
ModifyWorldTransform:根据指定的模式修改世界转换
OffsetViewportOrgEx:平移设备场景视口区域
OffsetWindowOrgEx:平移指定设备场景窗口起点
ScaleViewportExtEx:缩放设备场景视口的范围
ScaleWindowExtEx:缩放指定设备场景窗口范围
ScreenToClient:判断屏幕上一个指定点的客户区坐标
SetGraphicsMode:允许或禁止增强图形模式,以提供某些支持(包括世界转换)
SetMapMode:设置指定设备场景的映射模式
SetViewportExtEx:设置设备场景视口范围
SetViewportOrgEx:设置设备场景视口起点
SetWindowExtEx:设置指定设备场景窗口范围
SetWindowOrgEx:设置指定设备场景窗口起点:
SetWorldTransform:设置世界转换

已经抛弃的Window函数
AnyPopup,EnumTaskWindows,GetSysModalWindow,GetWindowTask,SetSysModalWindow

光标函数
ClipCursor:该函数把光标限制在屏幕上的一个矩形区域内,如果调用SetCursor或用鼠标设置的一个随后的光标位置在该矩形区域的外面,则

系统自动调整该位置以保持光标在矩形区域之内。
CopyCursor:该函数复制一光标。
CreateCursor:该函数创建一个指定大小、位模式和热点的光标。
DestroyCursor:该函数销毁一个光标并释放它占用的任何内存,不要使用该函数去消毁一个共享光标。
GetClipCursor:该函数检取一个矩形区域的屏幕坐标,光标被限制在该矩形区域之内。
GetCursor:该函数检取当前光标的句柄。
GetCursorPos:该函数检取光标的位置,以屏幕坐标表示。
LoadCursorFromFile:该函数根据一个文件中所含的数据创建光标。该文件由它的名字所指定或由一个系统光标鉴别器指定,该函数返回一个

新建光标的句柄,文件所包含的光标数据可以是光标格式(CUR)或运动光标格式(.ANI)。
SetCursor:该函数确定光标的形状。
SetCursorPos:该函数把光标移到屏幕的指定位置。
SetSystemCursor:该函数使一个应用程序定制系统光标。
ShowCursor:该函数显示或隐藏光标。

已经抛弃的光标函数
LoadCursor

鼠标输入函数
DragDetect:该函数捕获并跟踪鼠标的移动直到用户松开左键、按下Esc。键或者将鼠标移动到围绕指定点的“拖动矩形”之外。
GetCapture:该函数取得捕获了鼠标的窗口(如果存在)的句柄。
GetDoubleClickTime:该函数取得鼠标的当前双击时间:
GetMouseMovePoints:该函数取得鼠标或画笔。
mouse_event:该函数综合鼠标击键和鼠标动作。

ReleaseCapture:该函数从当前线程中的窗口释放鼠标捕获,并恢复通常的鼠标输入处理。捕获鼠标的窗口接收所有的鼠标输入(无论光标的

位置在哪里),除非点击鼠标键时,光标热点在另一个线程的窗口中。
SetCapture:该函数在属于当前线程的指定窗口里设置鼠标捕获。一旦窗口捕获了鼠标,所有鼠标输入都针对该窗口,无论光标是否在窗口的

边界内。同一时刻只能有一个窗口捕获鼠标。如果鼠标光标在另一个线程创建的窗口上,只有当鼠标键按下时系统才将鼠标输入指向指定的窗

口。

SetDoubleClickTime:该函数为鼠标设置双击时间。
SwapMouseButton:该函数反转或恢复鼠标左右键的含义
TrackMouseEvent:当在指定时间内鼠标指针离开或盘旋在一个窗口上时,此函数寄送消息。

键盘输入函数
ActivateKeyboardLayout:激活键盘布局
EnableWindow:该函数允许/禁止指定的窗口或控制接受鼠标和键盘的输入,当输入被禁止时,窗口不响应鼠标和按键的输入,输入允许时,

窗口接受所有的输入。

GetActiveWindow:该函数可以获得与调用线程的消息队列相关的活动窗口的窗口句柄。
GetAsyncKeyState:该函数用于确定函数被调用时,相应按键是处于按下状态,还是处于弹起状态;并且按下此键前否调用GetAsyncKeystate

函数。
GetFocus:该函数获取与调用线程消息队列相关的窗口的句柄,该窗口拥有输入焦点。
GetKeyboardLayout:该函数可以获得指定线程的活动键盘布局。若dwLayout参数为零,将返回活动线程的键盘布局。
GetKeyboardLayoutList:该函数可以获得与系统中输入点的当前集相对应的键盘布局句柄。该函数将句柄拷贝到指定的缓冲区中。
GetKeyboardLayoutName:该函数可以获得活动键盘布局的名字。
GetKeyboardState:该函数将256个虚拟键的状态拷贝到指定的缓冲区中。
GetKeyNameText:该函数检取表示键名的字符串。
GetKeyState:该函数检取指定虚拟键的状态。该状态指定此键是UP状态,DOWN状态,还是被触发的(开关每次按下此键时进行切换)。
IsWindowEnabled:该函数用于判断指定的窗口是否允许接受键盘或鼠标输入。
keybd_event:该函数合成一次击键事件。系统可使用这种合成的击键事件来产生WM_KEYUP或WM_KEYDOWN消息,键盘驱动程序的中断处理程序调

用keybd_event函数。在Windows NT中该函数己被使用Sendlhput来替代它。
LoadKeyboardLayout:该函数给系统中装入一种新的键盘布局,可以同时装入几种不同的键盘布局,任一时刻仅有一个进程是活动的,装入多

个键盘布局使得在多种布局间快速切换。
MapVirtualKey:该函数将一虚拟键码翻译(映射)成一扫描码或一字符值,或者将一扫描码翻译成一虚拟键码。
MapVirtualKeyEx:该函数将虚拟键码翻译为扫描码或字符值,或者将扫描码翻译为虚拟键码。该函数使用由给她键盘布局句柄标识的物理键盘

和输入语言来翻译这些代码。
OemKeyScan:该函数将0-0x0FF的OEM ASCII代码映射为OEM扫描码及其转换状态。该函数通过模拟键盘输入来提供信息,使得一个程序可将OEM

文本传送到另一程序
RegisterHotKey:该函数定义一个系统范围的热键。
SendInput:该函数用于合成击键、鼠标移动、按钮按下等。
SetActiveWindow:该函数激活一个窗口。该窗口必须与调用线程的消息队列相关联。
SetFocus:该函数对指定的窗口设置键盘焦点。该窗口必须与调用线程的消息队列相关。
SetKeyboardState:该函数拷贝一个存放键盘键状态的256字节的数组到调用线程的键盘输入状态表中。该表与GetkeyboardState和

GetkeyState函数访问的是同一个表。对该表的改变不会影响其他线程的键盘输入。
ToAscii:该函数将指定的虚拟键码和键盘状态翻译为相应的字符或字符串。
ToAsciiEx:该函数将指定的虚拟键码和键盘状态翻译为相应的字符或字符串。该函数使用由给定的键盘布局句柄标识的物理键盘布局和输入语

言来翻译代码。
ToUnicode:该函数将给定的虚拟键码和键盘状态翻译成相应的字符或字符串。
ToUnicodeEx:该函数将给定的虚拟键码和键盘状态翻译成相应的字符或字符串。
UnloadKeyboardLayout:该函数移去一个键盘布局。
UnregisterHotKey:该函数释放调用线程先前登记的热键。
VkKeyScan:该函数将一个字符翻译成相应的虚拟键码和对于当前键盘的转换状态。该函数己被VkKeyScanEx函数所替代。仍然可以使用

VkKeyscan函数,但是不必再定义键盘布局。
VkKeyScanEx:该函数将一个字符翻译成相应的虚拟键码和对于当前键盘的上挡状态。该函数使用由给定的键盘布局句柄标识的物理键盘布局和

输入语言来翻译字符。


hook函数
SetWindowsHookEx:安装一个应用程序定义的钩子进程到钩子链中。
为一定的事件你将安装一个钩子进程去监视系统。
这些事件是同一个指定的线程或者系统所有线程相关联的。
CallNextHookEx:传递钩子信息给当前钩子链的下一个钩子进程。
一个钩子进程会调用这个函数,无论是在处理这个消息的之前或者之后。
CallMsgFilter:传递指定的消息和钩子代码给 同WH_SYSMSGFILTER和WH_MSGFILTER钩子相关联的 钩子进程。
一个WH_SYSMSGFILTER或者WH_MSGFILTER钩子进程是一个应用程序定义的回调函数,用来检测、修改 对话框、消息框、菜单或着滚动条的消息


CallWndProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,在SendMessage被调用的时候。
在传递消息到目的窗口进程之前,系统传递这个消息到这个钩子进程。
这个钩子进程可以检测这个消息,但是不能修改它。
CallWndRetProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,在SendMessage被调用之后。
这个钩子进程可以检测这个消息,但是不能修改它。
GetMsgProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,在GetMessage从一个消息队列中获取一个消息的时候。
在传递这个获取的消息到目的窗口进程之前,系统会传递这个消息到这个钩子进程。
CBTProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,在激活、创建、销毁、最小化、最大化、移动或者缩放一个窗口之前;在完成一个系统命令之前;在从系统消息队列中

移除一个鼠标和键盘事件之前;在设置键盘焦点之前;或者在和系统消息队列同步之前。
一个computer-based training (CBT)应用程序使用这个钩子进程去接收来自系统的有用的通知。
DebugProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,在调用这个同任一类型钩子相关联的钩子进程之前。
系统会传递这个被调用的钩子的信息到DebugProc钩子进程,DebugProc会检测信息并且确定是否允许这个钩子被调用。
ForegroundIdleProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,在最前端线程将要变成idle的时候。
JournalPlaybackProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
典型的,一个应用程序会使用这个函数去回放一系列JournalRecordProc进程之前录制的鼠标和键盘消息。
当一个JournalPlaybackProc被安装的时候,正常的鼠标和键盘输入被禁止了。
JournalRecordProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
这个函数录制系统从系统消息队列中移除的消息。
之后,一个应用程序可以使用一个JournalPlaybackProc钩子进程回放这些消息。
LowLevelKeyboardProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,每当一个键盘输入事件将要被送入到一个线程输入队列的时候。
键盘输入可产生自键盘驱动,也可以是产生自keybd_event被调用之后。
如果输入产生自调用keybd_event,输入是“injected”。
LowLevelMouseProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,每当一个鼠标输入事件将要被送入到一个线程输入队列的时候。
键盘输入可产生自鼠标驱动,也可以是产生自mouse_event被调用之后。
如果输入产生自调用mouse_event,输入是“injected”。
MessageProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,在一个输入事件发生在一个对话框、消息框、菜单栏、滚动条之后,在这个输入事件产生的消息被处理之前。
KeyboardProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,当一个应用程序调用CallMessage或者PeekMessage并且有一个键盘消息(WM_KEYUP或者WM_KEYDOWN)被处理的时候。
MouseProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,当一个应用程序调用CallMessage或者PeekMessage并且有一个鼠标消息被处理的时候。
ShellProc:是一个应用程序定义的或者库定义的同SetWindowsHookEx一起使用的回调函数,这个函数从系统接收shell事件的通知。
SysMsgProc: 是一个库定义的同SetWindowsHookEx一起使用的回调函数,
系统会调用这个函数,在一个输入事件发生在一个对话框、消息框、菜单栏、滚动条之后,在这个输入事件产生的消息被处理之前。
UnhookWindowsHookEx:移除用SetWindowsHookEx安装到一个钩子链中的一个钩子进程。

 

Dll函数
DisableThreadLibraryCalls:函数用来屏蔽 DLL_THREAD_ATTACH 和 DLL_THREAD_DETACH消息,对于某些驱动程序或者DLL来说,DLL根本不关心

进程是否有新的线程,这个时候,改函数就变得有用。
DllMain:是一个缺省的入口函数
FreeLibrary:
FreeLibraryAndExitThread,
GetModuleFileName:获得hModule所指的文件的名字,hModule在LoadLibrary之类的函数会返回,是一个句柄,用来标记这个文件资源。
GetModuleHandle:获取一个应用程序或动态链接库的模块句柄
GetProcAddress:用来检索在DLL中的输出函数地址。
LoadLibrary:载入指定的动态链接库,并将它映射到当前进程使用的地址空间。一旦载入,即可访问库内保存的资源
LoadLibraryEx:装载指定的动态链接库,并为当前进程把它映射到地址空间。一旦载入,就可以访问库内保存的资源
LoadModule:载入一个windows应用程序,并在指定的环境中运行


内存管理函数
CopyMemory:拷贝一段内存从一个地址到另外一个地址
MoveMemory:移动一段内存从一个地址到另外一个地址
FillMemory:填充一段内存 用指定的byte
ZeroMemory:填充一段内存 用zero
GetProcessHeap:获取进程当前的默认堆 返回值 Long,当前进程堆的句柄
GetProcessHeaps:获取目前由一个进程使用的所有堆的一个列表 返回值 Long,当前进程可用堆的总数量
GlobalMemoryStatus:此函数用来获得当前可用的物理和虚拟内存信息
HeapAlloc:函数来分配系统内存资源
HeapCompact:相当于内存整理
HeapCreate:创建一个新的堆对象
HeapDestroy:销毁创建的堆
HeapFree:释放堆内存
HeapLock:尝试获得与指定堆关联的锁定
HeapReAlloc:从堆中重分配内存
HeapSize:分配堆的大小
HeapUnlock:API 释放堆锁
HeapValidate:函数用于验证堆栈的完整性; 调用该函数时,通常要传递一个堆栈句柄
HeapWalk:枚举堆对象的所有内存块
IsBadCodePtr:确定读指针的合法性
IsBadReadPtr: 确定进程是否有读动作
IsBadStringPtr:API 确定字符串指针的合法性
IsBadWritePtr: 函数用于验证参数
VirtualAlloc:
VirtualAllocEx:
VirtualFree,
VirtualFreeEx,
VirtualLock,
VirtualProtect,
VirtualProtectEx,
VirtualQuery,
VirtualQueryEx,
VirtualUnlock, 

你可能感兴趣的:(api,dll,活动,thread,training,windows)