Windows API函数大全四 $:|z{p
;%u'w;sgq
10. API之硬件与系统函数 :)/%*<vq,
ActivateKeyboardLayout 激活一个新的键盘布局。键盘布局定义了按键在一种物理性键盘上的位置与含义 ~hYTs
Beep 用于生成简单的声音 8^/V2;~^,>
CharToOem 将一个字串从ANSI字符集转换到OEM字符集 EbTjBq
ClipCursor 将指针限制到指定区域 O0|**Km\+
ConvertDefaultLocale 将一个特殊的地方标识符转换成真实的地方ID '3B\I#
CreateCaret 根据指定的信息创建一个插入符(光标),并将它选定为指定窗口的默认插入符 cY &SKV#
DestroyCaret 清除(破坏)一个插入符 / {|<3CEe
EnumCalendarInfo 枚举在指定"地方"环境中可用的日历信息 EvA{@g4>
EnumDateFormats 列举指定的"当地"设置中可用的长、短日期格式 \SA"DT
EnumSystemCodePages 枚举系统中已安装或支持的代码页 0MV^-M
EnumSystemLocales 枚举系统已经安装或提供支持的"地方"设置 3I|&}+Z6
EnumTimeFormats 枚举一个指定的地方适用的时间格式 O3U6"{yJ)
ExitWindowsEx 退出windows,并用特定的选项重新启动 :z=C
ExpandEnvironmentStrings 扩充环境字串 ^Rgm3?7
FreeEnvironmentStrings 翻译指定的环境字串块 "S#}iYp
GetACP 判断目前正在生效的ANSI代码页 R~9\mi5^UH
GetAsyncKeyState 判断函数调用时指定虚拟键的状态 {z":hmt
GetCaretBlinkTime 判断插入符光标的闪烁频率 N
=k}"2_=
GetCaretPos 判断插入符的当前位置 &hciv\YT2W
GetClipCursor 取得一个矩形,用于描述目前为鼠标指针规定的剪切区域 j2oHwt6"
GetCommandLine 获得指向当前命令行缓冲区的一个指针 3Zy $NsY3
GetComputerName 取得这台计算机的名称 m53XN
GetCPInfo 取得与指定代码页有关的信息 HH_w!_f
GetCurrencyFormat 针对指定的"地方"设置,根据货币格式格式化一个数字 %O9kq
GetCursor 获取目前选择的鼠标指针的句柄 +o{]0~y
GetCursorPos 获取鼠标指针的当前位置 CYIp 3D'k
GetDateFormat 针对指定的"当地"格式,对一个系统日期进行格式化 uU_0t;oR3
GetDoubleClickTime 判断连续两次鼠标单击之间会被处理成双击事件的间隔时间 l| /tKW
GetEnvironmentStrings 为包含了当前环境字串设置的一个内存块分配和返回一个句柄 y^M~zOe
GetEnvironmentVariable 取得一个环境变量的值 -68E]O
GetInputState 判断是否存在任何待决(等待处理)的鼠标或键盘事件 xLUgbql-
GetKBCodePage 由GetOEMCP取代,两者功能完全相同 F%Te0l
GetKeyboardLayout 取得一个句柄,描述指定应用程序的键盘布局 hXxgKi%
GetKeyboardLayoutList 获得系统适用的所有键盘布局的一个列表 q]1HCWde
GetKeyboardLayoutName 取得当前活动键盘布局的名称 /jBjqE;_
GetKeyboardState 取得键盘上每个虚拟键当前的状态 wI\
n%#
GetKeyboardType 了解与正在使用的键盘有关的信息 YX||\
GetKeyNameText 在给出扫描码的前提下,判断键名 ["5Z=4
GetKeyState 针对已处理过的按键,在最近一次输入信息时,判断指定虚拟键的状态 k]J!E-yI8
GetLastError 针对之前调用的api函数,用这个函数取得扩展错误信息 - v\n0Jt
GetLocaleInfo 取得与指定"地方"有关的信息 iw`,\V&
GetLocalTime 取得本地日期和时间 ('SA9JG
GetNumberFormat 针对指定的"地方",按特定的格式格式化一个数字 >]6inS9
GetOEMCP 判断在OEM和ANSI字符集间转换的windows代码页 ;.%Ii
w&WG
GetQueueStatus 判断应用程序消息队列中待决(等待处理)的消息类型 1J(` kQ)c
GetSysColor 判断指定windows显示对象的颜色 MS`wd
GetSystemDefaultLangID 取得系统的默认语言ID #bFJ6;g=V
GetSystemDefaultLCID 取得当前的默认系统"地方" I/whpOg
GetSystemInfo 取得与底层硬件平台有关的信息 yJ(BPSt
GetSystemMetrics 返回与windows环境有关的信息 >U.)?>G/dt
GetSystemPowerStatus 获得与当前系统电源状态有关的信息 E=Z;T
GetSystemTime 取得当前系统时间,这个时间采用的是"协同世界时间"(即UTC,也叫做GMT)格式 P!;%DI!<b
GetSystemTimeAdjustment 使内部系统时钟与一个外部的时钟信号源同步 SV-M8Im73z
GetThreadLocale 取得当前线程的地方ID QG~4<zy
GetTickCount 用于获取自windows启动以来经历的时间长度(毫秒) *}yOL
[
GetTimeFormat 针对当前指定的"地方",按特定的格式格式化一个系统时间 :n1^Xw0q
GetTimeZoneInformation 取得与系统时区设置有关的信息 ?Hb5<,1u3
GetUserDefaultLangID 为当前用户取得默认语言ID p&Os5zw;|
GetUserDefaultLCID 取得当前用户的默认"地方"设置 D{%l 4og
GetUserName 取得当前用户的名字 }3G`f> s
GetVersion 判断当前运行的Windows和DOS版本 /h/f&3'h
GetVersionEx 取得与平台和操作系统有关的版本信息 ".n,R"EF
HideCaret 在指定的窗口隐藏插入符(光标) UODbT&&
IsValidCodePage 判断一个代码页是否有效 fpCkT [&m
IsValidLocale 判断地方标识符是否有效 %t*_Rtz\o
keybd_event 这个函数模拟了键盘行动 L|O'X4"&_
LoadKeyboardLayout 载入一个键盘布局 %/b3G*$W
MapVirtualKey 根据指定的映射类型,执行不同的扫描码和字符转换 _;o)MTw|'
MapVirtualKeyEx 根据指定的映射类型,执行不同的扫描码和字符转换 (e:@7W)L
MessageBeep 播放一个系统声音。系统声音的分配方案是在控制面板里决定的 7=$@bHEF#*
mouse_event 模拟一次鼠标事件 *$
OemKeyScan 判断OEM字符集中的一个ASCII字符的扫描码和Shift键状态 9qhX\, h
OemToChar 将OEM字符集的一个字串转换到ANSI字符集 OxGS{zs
SetCaretBlinkTime 指定插入符(光标)的闪烁频率 \S]"nHX
SetCaretPos 指定插入符的位置 $:{r#mM
SetComputerName 设置新的计算机名 o\n9(ao
SetCursor 将指定的鼠标指针设为当前指针 ;S+UD~i[Bu
SetCursorPos 设置指针的位置 O'<5PwhG
SetDoubleClickTime 设置连续两次鼠标单击之间能使系统认为是双击事件的间隔时间 {km~,]N
SetEnvironmentVariable 将一个环境变量设为指定的值 ^/K]id7 2
SetKeyboardState 设置每个虚拟键当前在键盘上的状态 p2v+sWO
SetLocaleInfo 改变用户"地方"设置信息 03]
SetLocalTime 设置当前地方时间 L4fM?{Ic:s
SetSysColors 设置指定窗口显示对象的颜色 8T:?C~"
SetSystemCursor 改变任何一个标准系统指针 x.=Np\#\G-
SetSystemTime 设置当前系统时间 `s0`kp
SetSystemTimeAdjustment 定时添加一个校准值使内部系统时钟与一个外部的时钟信号源同步 RmR-uQU-c
SetThreadLocale 为当前线程设置地方 )<]*!
SetTimeZoneInformation 设置系统时区信息 W%3<"'eP
ShowCaret 在指定的窗口里显示插入符(光标) ~ULD{Ov'F
ShowCursor 控制鼠标指针的可视性 d&!;uzOx
SwapMouseButton 决定是否互换鼠标左右键的功能 ,BUDo9h
SystemParametersInfo 获取和设置数量众多的windows系统参数 `k ^d)9
SystemTimeToTzSpecificLocalTime 将系统时间转换成地方时间 V^n?0^o
ToAscii 根据当前的扫描码和键盘信息,将一个虚拟键转换成ASCII字符 :h4Nfz(
ToUnicode 根据当前的扫描码和键盘信息,将一个虚拟键转换成Unicode字符 [8- . T4
UnloadKeyboardLayout 卸载指定的键盘布局 3WOm`<
VkKeyScan 针对Windows字符集中一个ASCII字符,判断虚拟键码和Shift键的状态
: h"Bf@3
11. API之进程和线程函数 {8!\aYI
CancelWaitableTimer 这个函数用于取消一个可以等待下去的计时器操作 W @X/Z8.(
CallNamedPipe 这个函数由一个希望通过管道通信的一个客户进程调用 v;S_7#
ConnectNamedPipe 指示一台服务器等待下去,直至客户机同一个命名管道连接 29W~<E8K-
CreateEvent 创建一个事件对象 MF7q*f
CreateMailslot 创建一个邮路。返回的句柄由邮路服务器使用(收件人) L7\rx w
CreateMutex 创建一个互斥体(MUTEX) T^"-;
CreateNamedPipe 创建一个命名管道。返回的句柄由管道的服务器端使用 y:C=Ni&,"
CreatePipe 创建一个匿名管道 'Y6x!i2
CreateProcess 创建一个新进程(比如执行一个程序) hkifd4#
CreateSemaphore 创建一个新的信号机 x]e&G!|
CreateWaitableTimer 创建一个可等待的计时器对象 2Hh5gD|>
DisconnectNamedPipe 断开一个客户与一个命名管道的连接 z5V~m_RO
DuplicateHandle 在指出一个现有系统对象当前句柄的情况下,为那个对象创建一个新句柄 X9|={ng)g#
ExitProcess 中止一个进程 !Vtj:2PQL
FindCloseChangeNotification 关闭一个改动通知对象 yvQRr75
FindExecutable 查找与一个指定文件关联在一起的程序的文件名 12D>~#J
FindFirstChangeNotification 创建一个文件通知对象。该对象用于监视文件系统发生的变化 SxAZ2|/-
FindNextChangeNotification 重设一个文件改变通知对象,令其继续监视下一次变化 xI'sprNa_1
FreeLibrary 释放指定的动态链接库 a#U2y"
GetCurrentProcess 获取当前进程的一个伪句柄 T-;|E^
GetCurrentProcessId 获取当前进程一个唯一的标识符 z0yPBt1W
GetCurrentThread 获取当前线程的一个伪句柄 l\Q--
GetCurrentThreadId 获取当前线程一个唯一的线程标识符 W8@o7svrh
GetExitCodeProces 获取一个已中断进程的退出代码 uR;m<wPH,f
GetExitCodeThread 获取一个已中止线程的退出代码 d*M:PjG@
GetHandleInformation 获取与一个系统对象句柄有关的信息 T5:p^;?g
GetMailslotInfo 获取与一个邮路有关的信息 ^ UB*Q
GetModuleFileName 获取一个已装载模板的完整路径名称 nm8XHk]
GetModuleHandle 获取一个应用程序或动态链接库的模块句柄 t08E
2sI
GetPriorityClass 获取特定进程的优先级别 u3[A~V|0=
GetProcessShutdownParameters 调查系统关闭时一个指定的进程相对于其它进程的关闭早迟情况 )BJ Z{E*
GetProcessTimes 获取与一个进程的经过时间有关的信息 =>y%Aj&4
GetProcessWorkingSetSize 了解一个应用程序在运行过程中实际向它交付了多大容量的内存 ;5ANw"Dq
GetSartupInfo 获取一个进程的启动信息 s-S#qGZ
GetThreadPriority 获取特定线程的优先级别 bhqV2y*'
GetTheardTimes 获取与一个线程的经过时间有关的信息 {.,-lFb\
GetWindowThreadProcessId 获取与指定窗口关联在一起的一个进程和线程标识符 2@W'q=+0
LoadLibrary 载入指定的动态链接库,并将它映射到当前进程使用的地址空间 2.
t'!uwI
LoadLibraryEx 装载指定的动态链接库,并为当前进程把它映射到地址空间 d=*&=r0!C{
LoadModule 载入一个Windows应用程序,并在指定的环境中运行 O/N
Ed)H!
MsgWaitForMultipleObjects 等侯单个对象或一系列对象发出信号。如返回条件已经满足,则立即返回 Q5kf-~Jx+
SetPriorityClass 设置一个进程的优先级别 D|8Pe{`
SetProcessShutdownParameters 在系统关闭期间,为指定进程设置他相对于其它程序的关闭顺序 r+yl{
SetProcessWorkingSetSize 设置操作系统实际划分给进程使用的内存容量 wjRv=[
SetThreadPriority 设定线程的优先级别 E1"H(m&6
ShellExecute 查找与指定文件关联在一起的程序的文件名 eeOE\
TerminateProcess 结束一个进程 0@BhRf5
WinExec 运行指定的程序 )0tq&
12. API之控件与消息函数 w1N-`S:
AdjustWindowRect 给定一种窗口样式,计算获得目标客户区矩形所需的窗口大小 nQHQVcDs8
AnyPopup 判断屏幕上是否存在任何弹出式窗口 54^2=bp
ArrangeIconicWindows 排列一个父窗口的最小化子窗口 OG!+p}yD]
AttachThreadInput 连接线程输入函数
zfm-vU
BeginDeferWindowPos 启动构建一系列新窗口位置的过程 t,v=~LE
BringWindowToTop 将指定的窗口带至窗口列表顶部 x%$as;
CascadeWindows 以层叠方式排列窗口 JSCZX:5
ChildWindowFromPoint 返回父窗口中包含了指定点的第一个子窗口的句柄 ;7
F'xz"
ClientToScreen 判断窗口内以客户区坐标表示的一个点的屏幕坐标 Klv~#9Si
CloseWindow 最小化指定的窗口 JX $vz*KF
CopyRect 矩形内容复制 +|iJQF
DeferWindowPos 该函数为特定的窗口指定一个新窗口位置 P
{8d.
DestroyWindow 清除指定的窗口以及它的所有子窗口 '1f:8
DrawAnimatedRects 描绘一系列动态矩形 ~T'!.^/
EnableWindow 指定的窗口里允许或禁止所有鼠标及键盘输入 y%wjQC 0~
EndDeferWindowPos 同时更新DeferWindowPos调用时指定的所有窗口的位置及状态 &_Vd
EnumChildWindows 为指定的父窗口枚举子窗口 Z1&<-T_
EnumThreadWindows 枚举与指定任务相关的窗口 >3,t`Z:
EnumWindows 枚举窗口列表中的所有父窗口 9 M<3m
EqualRect 判断两个矩形结构是否相同 W "}Cfv
FindWindow 寻找窗口列表中第一个符合指定条件的顶级窗口 5 `Mos
FindWindowEx 在窗口列表中寻找与指定条件相符的第一个子窗口 ]ssX,1#Xh
FlashWindow 闪烁显示指定窗口 i& phko}
GetActiveWindow 获得活动窗口的句柄 1dE|q{
GetCapture 获得一个窗口的句柄,这个窗口位于当前输入线程,且拥有鼠标捕获(鼠标活动由它接收) asLvJ{d8s
GetClassInfo 取得WNDCLASS结构(或WNDCLASSEX结构)的一个副本,结构中包含了与指定类有关的信息 F?3zw4Vt~
GetClassLong 取得窗口类的一个Long变量条目 HOPi2nf{
GetClassName 为指定的窗口取得类名 SI~MTUqt
GetClassWord 为窗口类取得一个整数变量 LOPw0@
GetClientRect 返回指定窗口客户区矩形的大小 U~nW>WJ+.
GetDesktopWindow 获得代表整个屏幕的一个窗口(桌面窗口)句柄 2Jl$/W 3
GetFocus 获得拥有输入焦点的窗口的句柄 $={^':Uh
GetForegroundWindow 获得前台窗口的句柄 3<:m;F*#
GetLastActivePopup 获得在一个给定父窗口中最近激活过的弹出式窗口的句柄 X1N*}@:/
GetParent 判断指定窗口的父窗口 o4l=oY:'
GetTopWindow 搜索内部窗口列表,寻找隶属于指定窗口的头一个窗口的句柄 |PY*"Ul
GetUpdateRect 获得一个矩形,它描叙了指定窗口中需要更新的那一部分 V']{n7a-
GetWindow 获得一个窗口的句柄,该窗口与某源窗口有特定的关系 $!m (S&f
GetWindowContextHelpId 取得与窗口关联在一起的帮助场景ID wpW3%r;9
GetWindowLong 从指定窗口的结构中取得信息 IMF9eS{L
GetWindowPlacement 获得指定窗口的状态及位置信息 Dau'VtzN
GetWindowRect 获得整个窗口的范围矩形,窗口的边框、标题栏、滚动条及菜单等都在这个矩形内 Bq# l8u
GetWindowText 取得一个窗体的标题(caption)文字,或者一个控件的内容 exfJm'R?n
GetWindowTextLength 调查窗口标题文字或控件内容的长短 j_#oP
GetWindowWord 获得指定窗口结构的信息 xBevf&tP
InflateRect 增大或减小一个矩形的大小 /z(;1$Ld6{
IntersectRect 这个函数在lpDestRect里载入一个矩形,它是lpSrc1Rect与lpSrc2Rect两个矩形的交集 j3kcNb
InvalidateRect 屏蔽一个窗口客户区的全部或部分区域 4w)aAXK
IsChild 判断一个窗口是否为另一窗口的子或隶属窗口 B}|(/a@*
IsIconic 判断窗口是否已最小化 qz]g4hS
IsRectEmpty 判断一个矩形是否为空 T=-$ok`G
IsWindow 判断一个窗口句柄是否有效 K[G=J
IsWindowEnabled 判断窗口是否处于活动状态 rO;Vr},3\%
IsWindowUnicode 判断一个窗口是否为Unicode窗口。这意味着窗口为所有基于文本的消息都接收Unicode文字 Xv2u7T\
IsWindowVisible 判断窗口是否可见 Lfj]Y~*z
IsZoomed 判断窗口是否最大化 Ic,V,#my
LockWindowUpdate 锁定指定窗口,禁止它更新 /^jV-Z`
MapWindowPoints 将一个窗口客户区坐标的点转换到另一窗口的客户区坐标系统 w<54mGMOLr
MoveWindow 改变指定窗口的位置和大小 l^WPv/}?
OffsetRect 通过应用一个指定的偏移,从而让矩形移动起来 Obl,Qa:5
OpenIcon 恢复一个最小化的程序,并将其激活 5Y}=,v*h}
PtInRect 判断指定的点是否位于矩形内部 ZR"BxE0_k
RedrawWindow 重画全部或部分窗口 _(&XqEX
ReleaseCapture 为当前的应用程序释放鼠标捕获 :Dn{
ScreenToClient 判断屏幕上一个指定点的客户区坐标 Pd^v-}[
ScrollWindow 滚动窗口客户区的全部或一部分 $SAk|
ScrollWindowEx 根据附加的选项,滚动窗口客户区的全部或部分 8t$w/#'@
SetActiveWindow 激活指定的窗口 qE W3k),
SetCapture 将鼠标捕获设置到指定的窗口 :~gG]|F
SetClassLong 为窗口类设置一个Long变量条目 E5EAk6
SetClassWord 为窗口类设置一个条目 q n2X._`
SetFocusAPI 将输入焦点设到指定的窗口。如有必要,会激活窗口 12bt\h9
SetForegroundWindow 将窗口设为系统的前台窗口 hZ;[}5T\<S
SetParent 指定一个窗口的新父 /#]4lFk:h
SetRect 设置指定矩形的内容 x*}*0).
SetRectEmpty 将矩形设为一个空矩形 omEnIfQSO
SetWindowContextHelpId 为指定的窗口设置帮助场景(上下文)ID 6Pzz= ai<
SetWindowLong 在窗口结构中为指定的窗口设置信息 s+jL BY
SetWindowPlacement 设置窗口状态和位置信息 -NgL4?p=
SetWindowPos 为窗口指定一个新位置和状态 <:gNx%R
SetWindowText 设置窗口的标题文字或控件的内容 D)my@W0,
SetWindowWord 在窗口结构中为指定的窗口设置信息 QaAWO
ShowOwnedPopups 显示或隐藏由指定窗口所有的全部弹出式窗口 'nR'o /!
ShowWindow 控制窗口的可见性 MPxe|Wws
ShowWindowAsync 与ShowWindow相似 h+<F,0
SubtractRect 装载矩形lprcDst,它是在矩形lprcSrc1中减去lprcSrc2得到的结果 {:!CA/0Jx
TileWindows 以平铺顺序排列窗口 B[8`l} t
UnionRect 装载一个lpDestRect目标矩形,它是lpSrc1Rect和lpSrc2Rect联合起来的结果 pndAXO:v
UpdateWindow 强制立即更新窗口 Z8yt8O
ValidateRect 校验窗口的全部或部分客户区 9}_ccq
WindowFromPoint 返回包含了指定点的窗口的句柄。忽略屏蔽、隐藏以及透明窗口