Windows API函数大全四 6uFw+Ya#
=&$z
Nc4h
10. API之硬件与系统函数 c3g`k"3*`
ActivateKeyboardLayout 激活一个新的键盘布局。键盘布局定义了按键在一种物理性键盘上的位置与含义 ?Y,^Moc:
Beep 用于生成简单的声音 'xxM0Kn`
CharToOem 将一个字串从ANSI字符集转换到OEM字符集 7H< IO`
ClipCursor 将指针限制到指定区域 *URT-+'
ConvertDefaultLocale 将一个特殊的地方标识符转换成真实的地方ID tzIP4CR~F&
CreateCaret 根据指定的信息创建一个插入符(光标),并将它选定为指定窗口的默认插入符 111A e*U
DestroyCaret 清除(破坏)一个插入符 p'2IlQ\
EnumCalendarInfo 枚举在指定"地方"环境中可用的日历信息 4^bt~{}
EnumDateFormats 列举指定的"当地"设置中可用的长、短日期格式 f'@ L|&w
EnumSystemCodePages 枚举系统中已安装或支持的代码页 2tpu v(H;
EnumSystemLocales 枚举系统已经安装或提供支持的"地方"设置 PE4
L7
EnumTimeFormats 枚举一个指定的地方适用的时间格式 M>p<1`t-&
ExitWindowsEx 退出windows,并用特定的选项重新启动 It&CM,=t
ExpandEnvironmentStrings 扩充环境字串 TPk?MeVy%W
FreeEnvironmentStrings 翻译指定的环境字串块 vB_3lAJt@
GetACP 判断目前正在生效的ANSI代码页 -8Mb~Hfl0
GetAsyncKeyState 判断函数调用时指定虚拟键的状态 Ue
>]uZ|
GetCaretBlinkTime 判断插入符光标的闪烁频率 rpm \!O
GetCaretPos 判断插入符的当前位置 "IT7.!=@9
GetClipCursor 取得一个矩形,用于描述目前为鼠标指针规定的剪切区域 ?<C(ga
GetCommandLine 获得指向当前命令行缓冲区的一个指针 (b<0=U
GetComputerName 取得这台计算机的名称 7)r]h?
GetCPInfo 取得与指定代码页有关的信息 ~ a`[p\
GetCurrencyFormat 针对指定的"地方"设置,根据货币格式格式化一个数字 D^US2B
GetCursor 获取目前选择的鼠标指针的句柄 eDZ8F^0
GetCursorPos 获取鼠标指针的当前位置 \?T9v
GetDateFormat 针对指定的"当地"格式,对一个系统日期进行格式化 zHX\h[0f
GetDoubleClickTime 判断连续两次鼠标单击之间会被处理成双击事件的间隔时间 Jl`^`Yv
GetEnvironmentStrings 为包含了当前环境字串设置的一个内存块分配和返回一个句柄 ckA\{v
GetEnvironmentVariable 取得一个环境变量的值 iKJqMES
GetInputState 判断是否存在任何待决(等待处理)的鼠标或键盘事件 rVNx2
GetKBCodePage 由GetOEMCP取代,两者功能完全相同 b2UDP W
GetKeyboardLayout 取得一个句柄,描述指定应用程序的键盘布局 YxJQ^D`
GetKeyboardLayoutList 获得系统适用的所有键盘布局的一个列表 g}D)MlXRq
GetKeyboardLayoutName 取得当前活动键盘布局的名称 nco.j:
GetKeyboardState 取得键盘上每个虚拟键当前的状态 hoqZb<:
GetKeyboardType 了解与正在使用的键盘有关的信息 `HXv_9
GetKeyNameText 在给出扫描码的前提下,判断键名 zH}3J}
GetKeyState 针对已处理过的按键,在最近一次输入信息时,判断指定虚拟键的状态 bN zb#P#hP
GetLastError 针对之前调用的api函数,用这个函数取得扩展错误信息 l X+~; 94
GetLocaleInfo 取得与指定"地方"有关的信息 i`r`Fj}-S-
GetLocalTime 取得本地日期和时间 BL16?&RK
GetNumberFormat 针对指定的"地方",按特定的格式格式化一个数字 4F#H$`:[
GetOEMCP 判断在OEM和ANSI字符集间转换的windows代码页 %(/E
`
GetQueueStatus 判断应用程序消息队列中待决(等待处理)的消息类型 -?)^
hbr
GetSysColor 判断指定windows显示对象的颜色 +yWD>PY(
GetSystemDefaultLangID 取得系统的默认语言ID <Q9l'u]3$c
GetSystemDefaultLCID 取得当前的默认系统"地方" 'QT~o-U
GetSystemInfo 取得与底层硬件平台有关的信息 ?`Yu~a{
GetSystemMetrics 返回与windows环境有关的信息 .k]`z>uv
GetSystemPowerStatus 获得与当前系统电源状态有关的信息 (is' ,4^b
GetSystemTime 取得当前系统时间,这个时间采用的是"协同世界时间"(即UTC,也叫做GMT)格式 $ItmYj.m
GetSystemTimeAdjustment 使内部系统时钟与一个外部的时钟信号源同步 v-3VzAd=*&
GetThreadLocale 取得当前线程的地方ID
^rVHaI
GetTickCount 用于获取自windows启动以来经历的时间长度(毫秒) /x ?@Mn>
GetTimeFormat 针对当前指定的"地方",按特定的格式格式化一个系统时间 VGeTX 4h
GetTimeZoneInformation 取得与系统时区设置有关的信息 nwKp8mfP
GetUserDefaultLangID 为当前用户取得默认语言ID JVX)>2&$
GetUserDefaultLCID 取得当前用户的默认"地方"设置
h{^v756L
GetUserName 取得当前用户的名字 )4=86>XJT
GetVersion 判断当前运行的Windows和DOS版本 OA&'T*)-A6
GetVersionEx 取得与平台和操作系统有关的版本信息 E .Xp\Dm71
HideCaret 在指定的窗口隐藏插入符(光标) M0fN[!*z
IsValidCodePage 判断一个代码页是否有效 iv~R4;;)
IsValidLocale 判断地方标识符是否有效 x:MwM?
keybd_event 这个函数模拟了键盘行动 s"=TM$Vb
LoadKeyboardLayout 载入一个键盘布局 8c)GUx
MapVirtualKey 根据指定的映射类型,执行不同的扫描码和字符转换 nD
BWm`kN
MapVirtualKeyEx 根据指定的映射类型,执行不同的扫描码和字符转换 t[`LG)
MessageBeep 播放一个系统声音。系统声音的分配方案是在控制面板里决定的 Gg'!(]v
mouse_event 模拟一次鼠标事件 ]i.N'O<p
OemKeyScan 判断OEM字符集中的一个ASCII字符的扫描码和Shift键状态 QX<n^W
OemToChar 将OEM字符集的一个字串转换到ANSI字符集 A,<5W }
SetCaretBlinkTime 指定插入符(光标)的闪烁频率 {wz)^A
sy
SetCaretPos 指定插入符的位置 ,^?g\&f(
SetComputerName 设置新的计算机名 qhxMO[f
SetCursor 将指定的鼠标指针设为当前指针 hi!A9T3%}M
SetCursorPos 设置指针的位置 ;^xM"
{G8
SetDoubleClickTime 设置连续两次鼠标单击之间能使系统认为是双击事件的间隔时间 $C7a#?YF,
SetEnvironmentVariable 将一个环境变量设为指定的值 f%o[eW#
SetKeyboardState 设置每个虚拟键当前在键盘上的状态 HRyFjAR\?
SetLocaleInfo 改变用户"地方"设置信息 &Uam4'B6-
SetLocalTime 设置当前地方时间 bQautRW
SetSysColors 设置指定窗口显示对象的颜色 HXKM<E{j
SetSystemCursor 改变任何一个标准系统指针 6T$=(I <4
SetSystemTime 设置当前系统时间 ,yltt+e
SetSystemTimeAdjustment 定时添加一个校准值使内部系统时钟与一个外部的时钟信号源同步 AyO%,6p[
SetThreadLocale 为当前线程设置地方 i#*[,
P~
SetTimeZoneInformation 设置系统时区信息 :lB`K>)iB}
ShowCaret 在指定的窗口里显示插入符(光标) j J{F0o
ShowCursor 控制鼠标指针的可视性 ih0a#PB8
SwapMouseButton 决定是否互换鼠标左右键的功能 >k\pSV[
SystemParametersInfo 获取和设置数量众多的windows系统参数 @\ y{q;
SystemTimeToTzSpecificLocalTime 将系统时间转换成地方时间 O]PM L`
ToAscii 根据当前的扫描码和键盘信息,将一个虚拟键转换成ASCII字符 _,L_H[FN
ToUnicode 根据当前的扫描码和键盘信息,将一个虚拟键转换成Unicode字符 &6vaLx
UnloadKeyboardLayout 卸载指定的键盘布局 [WR"#y
VkKeyScan 针对Windows字符集中一个ASCII字符,判断虚拟键码和Shift键的状态 !YAX.e
11. API之进程和线程函数 7?whxi Qs
CancelWaitableTimer 这个函数用于取消一个可以等待下去的计时器操作 -4Hb]#*2
CallNamedPipe 这个函数由一个希望通过管道通信的一个客户进程调用 Q0R05*
ConnectNamedPipe 指示一台服务器等待下去,直至客户机同一个命名管道连接 =l43RawAmu
CreateEvent 创建一个事件对象 W9%v#;2
CreateMailslot 创建一个邮路。返回的句柄由邮路服务器使用(收件人) A,_O=hA2I
CreateMutex 创建一个互斥体(MUTEX) ; R+>}6
CreateNamedPipe 创建一个命名管道。返回的句柄由管道的服务器端使用 >XgJo7u
CreatePipe 创建一个匿名管道 e
n~m)r3&
CreateProcess 创建一个新进程(比如执行一个程序) Sxq@W8W
CreateSemaphore 创建一个新的信号机 ck{S
CreateWaitableTimer 创建一个可等待的计时器对象 }?,?2U,8:
DisconnectNamedPipe 断开一个客户与一个命名管道的连接 Q^f{H.
DuplicateHandle 在指出一个现有系统对象当前句柄的情况下,为那个对象创建一个新句柄 ^5E9p@d"J
ExitProcess 中止一个进程 N4+Cg t(
FindCloseChangeNotification 关闭一个改动通知对象 IrL%0&*hS
FindExecutable 查找与一个指定文件关联在一起的程序的文件名 2V)+ba|+
FindFirstChangeNotification 创建一个文件通知对象。该对象用于监视文件系统发生的变化 VEh9N
FindNextChangeNotification 重设一个文件改变通知对象,令其继续监视下一次变化 lwf4ke
FreeLibrary 释放指定的动态链接库 / rc[HbNg.
GetCurrentProcess 获取当前进程的一个伪句柄 }dzdx "
GetCurrentProcessId 获取当前进程一个唯一的标识符 @.-S(MNR
GetCurrentThread 获取当前线程的一个伪句柄 * |,N/e
GetCurrentThreadId 获取当前线程一个唯一的线程标识符 ^yPZ$Q
GetExitCodeProces 获取一个已中断进程的退出代码 >*{k~Y-G
GetExitCodeThread 获取一个已中止线程的退出代码 VBL4cU8D
GetHandleInformation 获取与一个系统对象句柄有关的信息 wmGcXBHt$
GetMailslotInfo 获取与一个邮路有关的信息 T<0 r,
GetModuleFileName 获取一个已装载模板的完整路径名称 HQP.7.w7 5
GetModuleHandle 获取一个应用程序或动态链接库的模块句柄 Li6|c*K'
GetPriorityClass 获取特定进程的优先级别 F
`o9GLxM}
GetProcessShutdownParameters 调查系统关闭时一个指定的进程相对于其它进程的关闭早迟情况 1GK.:s6.f
GetProcessTimes 获取与一个进程的经过时间有关的信息 V gMgeja
GetProcessWorkingSetSize 了解一个应用程序在运行过程中实际向它交付了多大容量的内存 ]_h3
GetSartupInfo 获取一个进程的启动信息 j2Dw7"f3
GetThreadPriority 获取特定线程的优先级别 **h4M2'C
GetTheardTimes 获取与一个线程的经过时间有关的信息 AZQQge
GetWindowThreadProcessId 获取与指定窗口关联在一起的一个进程和线程标识符 ?) y}HF
LoadLibrary 载入指定的动态链接库,并将它映射到当前进程使用的地址空间 a|z-EKV
LoadLibraryEx 装载指定的动态链接库,并为当前进程把它映射到地址空间 -NJpql{Cb
LoadModule 载入一个Windows应用程序,并在指定的环境中运行 t/;0/ql\
MsgWaitForMultipleObjects 等侯单个对象或一系列对象发出信号。如返回条件已经满足,则立即返回 N~=I))i
SetPriorityClass 设置一个进程的优先级别 y-3'qq'E
SetProcessShutdownParameters 在系统关闭期间,为指定进程设置他相对于其它程序的关闭顺序 $b|LZE\bU.
SetProcessWorkingSetSize 设置操作系统实际划分给进程使用的内存容量 9iG&9tB@
SetThreadPriority 设定线程的优先级别 C})Dvh
ShellExecute 查找与指定文件关联在一起的程序的文件名 Vq+7 /+2"
TerminateProcess 结束一个进程 R)66qRf
WinExec 运行指定的程序 ^Ye(b7Gd
12. API之控件与消息函数 Br9j)1;
AdjustWindowRect 给定一种窗口样式,计算获得目标客户区矩形所需的窗口大小 <Ja&z M
AnyPopup 判断屏幕上是否存在任何弹出式窗口 1+Gq<]@G
ArrangeIconicWindows 排列一个父窗口的最小化子窗口 T]wI)
AttachThreadInput 连接线程输入函数 1M&Lb.J6
BeginDeferWindowPos 启动构建一系列新窗口位置的过程 >Y08/OAI.2
BringWindowToTop 将指定的窗口带至窗口列表顶部 jlP*RX
CascadeWindows 以层叠方式排列窗口 Sh!c]r>\Q
ChildWindowFromPoint 返回父窗口中包含了指定点的第一个子窗口的句柄 L4Jm8sy{
ClientToScreen 判断窗口内以客户区坐标表示的一个点的屏幕坐标 jcqUY+T$
CloseWindow 最小化指定的窗口 M]PZwW8
CopyRect 矩形内容复制 @~$d4K
y<
DeferWindowPos 该函数为特定的窗口指定一个新窗口位置 >}* W$i
DestroyWindow 清除指定的窗口以及它的所有子窗口 :o8`2Z *g
DrawAnimatedRects 描绘一系列动态矩形 nz?[
EnableWindow 指定的窗口里允许或禁止所有鼠标及键盘输入 UAF$bR
EndDeferWindowPos 同时更新DeferWindowPos调用时指定的所有窗口的位置及状态 #S?^?3d
EnumChildWindows 为指定的父窗口枚举子窗口 %8n<#0v-|4
EnumThreadWindows 枚举与指定任务相关的窗口 ;=,-C;`
EnumWindows 枚举窗口列表中的所有父窗口 k";dK*hD,
EqualRect 判断两个矩形结构是否相同 3tf_\E+mIi
FindWindow 寻找窗口列表中第一个符合指定条件的顶级窗口 ^!S4?<v
FindWindowEx 在窗口列表中寻找与指定条件相符的第一个子窗口 ,pD sU @
FlashWindow 闪烁显示指定窗口 `'s_5Ek
GetActiveWindow 获得活动窗口的句柄 D Yf2V6'
GetCapture 获得一个窗口的句柄,这个窗口位于当前输入线程,且拥有鼠标捕获(鼠标活动由它接收) >;4q
GetClassInfo 取得WNDCLASS结构(或WNDCLASSEX结构)的一个副本,结构中包含了与指定类有关的信息 .5Y{Yme
GetClassLong 取得窗口类的一个Long变量条目 z]N#.utQ
GetClassName 为指定的窗口取得类名 U*a#{C7"
GetClassWord 为窗口类取得一个整数变量 {%3WHGr%L
GetClientRect 返回指定窗口客户区矩形的大小 |V\{U j
GetDesktopWindow 获得代表整个屏幕的一个窗口(桌面窗口)句柄 Jai]z
GetFocus 获得拥有输入焦点的窗口的句柄 e=(Y,e3
GetForegroundWindow 获得前台窗口的句柄 {'4#{zmp
GetLastActivePopup 获得在一个给定父窗口中最近激活过的弹出式窗口的句柄 eWDXV-xD
GetParent 判断指定窗口的父窗口 @}4>:\es
GetTopWindow 搜索内部窗口列表,寻找隶属于指定窗口的头一个窗口的句柄 v,}C~L3
GetUpdateRect 获得一个矩形,它描叙了指定窗口中需要更新的那一部分 n0 l|7:Mk
GetWindow 获得一个窗口的句柄,该窗口与某源窗口有特定的关系 ?sQg{1"Zr
GetWindowContextHelpId 取得与窗口关联在一起的帮助场景ID nZB~l=
GetWindowLong 从指定窗口的结构中取得信息 Ij(<(y{?Q1
GetWindowPlacement 获得指定窗口的状态及位置信息 1TTS@\
GetWindowRect 获得整个窗口的范围矩形,窗口的边框、标题栏、滚动条及菜单等都在这个矩形内 +1T>Ob;hk
GetWindowText 取得一个窗体的标题(caption)文字,或者一个控件的内容 f)_<Ih\/7_
GetWindowTextLength 调查窗口标题文字或控件内容的长短 !d()'N
GetWindowWord 获得指定窗口结构的信息 @LI;q
InflateRect 增大或减小一个矩形的大小 m[=SCH-;
IntersectRect 这个函数在lpDestRect里载入一个矩形,它是lpSrc1Rect与lpSrc2Rect两个矩形的交集 W\>O$IX^e
InvalidateRect 屏蔽一个窗口客户区的全部或部分区域 5Lc@=,/0
IsChild 判断一个窗口是否为另一窗口的子或隶属窗口 H"/J R
IsIconic 判断窗口是否已最小化 aaU4Jl?L
IsRectEmpty 判断一个矩形是否为空 N%f" W&ci
IsWindow 判断一个窗口句柄是否有效 #-YbZ
IsWindowEnabled 判断窗口是否处于活动状态 ?-c|c_|$
IsWindowUnicode 判断一个窗口是否为Unicode窗口。这意味着窗口为所有基于文本的消息都接收Unicode文字 t,%m-dU
IsWindowVisible 判断窗口是否可见 5Yv*f:
IsZoomed 判断窗口是否最大化 D
1.59mHsD
LockWindowUpdate 锁定指定窗口,禁止它更新 Nmx\qJUR(
MapWindowPoints 将一个窗口客户区坐标的点转换到另一窗口的客户区坐标系统 `
1+*-g^r
MoveWindow 改变指定窗口的位置和大小 (m2%7f.I
OffsetRect 通过应用一个指定的偏移,从而让矩形移动起来 1SjVj9{:
OpenIcon 恢复一个最小化的程序,并将其激活 q,ie)`
PtInRect 判断指定的点是否位于矩形内部 <2]h$53y!
RedrawWindow 重画全部或部分窗口 CCG5:xS
ReleaseCapture 为当前的应用程序释放鼠标捕获 fh`Y2s|:7R
ScreenToClient 判断屏幕上一个指定点的客户区坐标 Mk#r_:[BS
ScrollWindow 滚动窗口客户区的全部或一部分 Mi.2
>
ScrollWindowEx 根据附加的选项,滚动窗口客户区的全部或部分 I?D=Q$s
SetActiveWindow 激活指定的窗口 q*lk9{>
SetCapture 将鼠标捕获设置到指定的窗口 .<QKQ% -
SetClassLong 为窗口类设置一个Long变量条目 sd\}M{U
SetClassWord 为窗口类设置一个条目
=iW hK~S
SetFocusAPI 将输入焦点设到指定的窗口。如有必要,会激活窗口 RCTqV.L
SetForegroundWindow 将窗口设为系统的前台窗口 CfW#Wk:8J
SetParent 指定一个窗口的新父 *66EkCj
SetRect 设置指定矩形的内容 a.<XJ\
SetRectEmpty 将矩形设为一个空矩形 {BlTLAKm
SetWindowContextHelpId 为指定的窗口设置帮助场景(上下文)ID s7yKxg+`{
SetWindowLong 在窗口结构中为指定的窗口设置信息 !y_L~81?
SetWindowPlacement 设置窗口状态和位置信息 )>h3IR
SetWindowPos 为窗口指定一个新位置和状态 5*2hTM!
SetWindowText 设置窗口的标题文字或控件的内容 =T3{!\tH
SetWindowWord 在窗口结构中为指定的窗口设置信息 (QIU 3EN
ShowOwnedPopups 显示或隐藏由指定窗口所有的全部弹出式窗口 4OM
]8I!
ShowWindow 控制窗口的可见性 10zM8<bl
ShowWindowAsync 与ShowWindow相似 huv|l6
SubtractRect 装载矩形lprcDst,它是在矩形lprcSrc1中减去lprcSrc2得到的结果 a"P &
9c
TileWindows 以平铺顺序排列窗口 Fw[1Aa#
UnionRect 装载一个lpDestRect目标矩形,它是lpSrc1Rect和lpSrc2Rect联合起来的结果 fASklcQ
UpdateWindow 强制立即更新窗口 !KXcg9e
ValidateRect 校验窗口的全部或部分客户区 -}TP)/!,*
WindowFromPoint 返回包含了指定点的窗口的句柄。忽略屏蔽、隐藏以及透明窗口