windowsAPI函数大全
WindowsAPI常用函数
WindowsAPI常⽤函数.Net中虽然类库很强的,但还是有些时候功能有限,掌握常⽤的api函数,会给我们解决问题提供另⼀种思路,下⾯给出⾃⼰常⽤到的Api函数,以备查询。
1,SetForegroundWindow将窗⼝显⽰到最前⾯,前提是窗⼝没有最⼩化。
[DllImport("User32.dll")]public static extern bool SetForegroundWindow(IntPtr hWnd);2,ShowWindowAsync显⽰窗⼝,如最⼩化后显⽰正常,这是异步的。
[DllImport("User32.dll")]public static extern bool ShowWindowAsync(IntPtr hWnd, int cmdShow);public enum ShowState : int{SW_HIDE = 0,SW_SHOWNORMAL = 1,SW_NORMAL = 1,SW_SHOWMINIMIZED = 2,SW_SHOWMAXIMIZED = 3,SW_MAXIMIZE = 3,SW_SHOWNOACTIVATE = 4,SW_SHOW = 5,SW_MINIMIZE = 6,SW_SHOWMINNOACTIVE = 7,SW_SHOWNA = 8,SW_RESTORE = 9,SW_SHOWDEFAULT = 10,SW_FORCEMINIMIZE = 11,SW_MAX = 11}3,SendMessage进程间通信,接受窗⼝要有消息循环才⾏。
WM_COPYDATApublic const int WM_COPYDATA = 0x004A;public struct COPYDATASTRUCT{public IntPtr dwData;public int cbData;[MarshalAs(UnmanagedType.LPStr)]public string lpData;}[DllImport("User32.dll", EntryPoint = "SendMessage")]public static extern int SendMessage(IntPtr hWnd, // handle to destination windowint Msg, // messageint wParam, // first message parameterref COPYDATASTRUCT lParam // second message parameter);例⼦:发送⽅:byte[] sarr = System.Text.Encoding.Default.GetBytes(args[0]);Winn32.COPYDATASTRUCT copyData = new Winn32.COPYDATASTRUCT();copyData.cbData = sarr.Length + 1;copyData.lpData = args[0];copyData.dwData = (IntPtr)100; //这⾥随便写什么数字Winn32.SendMessage(runningInstance.MainWindowHandle, Winn32.WM_COPYDATA, 0, ref copyData);接收⽅protected override void DefWndProc(ref Message m){if (m.Msg == Winn32.WM_COPYDATA){Winn32.COPYDATASTRUCT copyData = new Winn32.COPYDATASTRUCT();Type type = copyData.GetType();copyData = (Winn32.COPYDATASTRUCT)m.GetLParam(type);this.textBox1.Text = copyData.lpData;}base.DefWndProc(ref m);}4,FindWindow找到窗⼝句柄[DllImport("User32.dll", EntryPoint = "FindWindow")]private static extern int FindWindow(string lpClassName, string lpWindowName);5,SetLocalTime设定系统时间[StructLayout(LayoutKind.Sequential)]public struct SYSTEMTIME{public ushort wYear;public ushort wMonth;public ushort wDayOfWeek;public ushort wDay;public ushort wHour;public ushort wMinute;public ushort wSecond;public ushort wMilliseconds;public void FromDateTime(DateTime dateTime){wYear = (ushort)dateTime.Year;wMonth = (ushort)dateTime.Month;wDayOfWeek = (ushort)dateTime.DayOfWeek;wDay = (ushort)dateTime.Day;wHour = (ushort)dateTime.Hour;wMinute = (ushort)dateTime.Minute;wSecond = (ushort)dateTime.Second;wMilliseconds = (ushort)lisecond;}public DateTime ToDateTime(){return new DateTime(wYear, wMonth, wDay, wHour, wMinute, wSecond); }}[DllImport("kernel32.dll")]public static extern bool SetLocalTime(ref SYSTEMTIME Time);6,SHGetFileInfo获取执⾏⽂件的图标icon[Flags]enum SHGFI : int{/// <summary>get icon</summary>Icon = 0x000000100,/// <summary>get display name</summary>DisplayName = 0x000000200,/// <summary>get type name</summary>TypeName = 0x000000400,/// <summary>get attributes</summary>Attributes = 0x000000800,/// <summary>get icon location</summary>IconLocation = 0x000001000,/// <summary>return exe type</summary>ExeType = 0x000002000,/// <summary>get system icon index</summary>SysIconIndex = 0x000004000,/// <summary>put a link overlay on icon</summary>LinkOverlay = 0x000008000,/// <summary>show icon in selected state</summary>Selected = 0x000010000,/// <summary>get only specified attributes</summary>Attr_Specified = 0x000020000,/// <summary>get large icon</summary>LargeIcon = 0x000000000,/// <summary>get small icon</summary>SmallIcon = 0x000000001,/// <summary>get open icon</summary>OpenIcon = 0x000000002,/// <summary>get shell size icon</summary>ShellIconSize = 0x000000004,/// <summary>pszPath is a pidl</summary>PIDL = 0x000000008,/// <summary>use passed dwFileAttribute</summary>UseFileAttributes = 0x000000010,/// <summary>apply the appropriate overlays</summary>AddOverlays = 0x000000020,/// <summary>Get the index of the overlay in the upper 8 bits of the iIcon</summary> OverlayIndex = 0x000000040,}[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]public struct SHFILEINFO{public SHFILEINFO(bool b){hIcon = IntPtr.Zero;iIcon = 0;dwAttributes = 0;szDisplayName = "";szTypeName = "";}public IntPtr hIcon;public int iIcon;public uint dwAttributes;[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 260)]public string szDisplayName;[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 80)]public string szTypeName;};[DllImport("shell32.dll", CharSet = CharSet.Unicode)]//路径有中⽂字符,要⽤unicodepublic static extern int SHGetFileInfo(string pszPath,int dwFileAttributes,out SHFILEINFO psfi,uint cbfileInfo,SHGFI uFlags);例⼦:private static Icon GetIcon(string strPath, bool bSmall){SHFILEINFO info = new SHFILEINFO(true);int cbFileInfo = Marshal.SizeOf(info);SHGFI flags;if (bSmall)flags = SHGFI.Icon | SHGFI.SmallIcon | eFileAttributes;elseflags = SHGFI.Icon | rgeIcon;Win32API.SHGetFileInfo(strPath, 256, out info, (uint)cbFileInfo, flags);return Icon.FromHandle(info.hIcon);}7,GetWindowThreadProcessId得到句柄的进程和线程ID,返回的是线程ID,ref返回的是进程ID[System.Runtime.InteropServices.DllImport("User32.dll")]private static extern int GetWindowThreadProcessId(int Hwnd, ref int OutPressId);例⼦:杀死excel进程int processID = 0;int threadID;threadID = GetWindowThreadProcessId(excelApp.Hwnd, ref processID);if (processID > 0){System.Diagnostics.Process process = System.Diagnostics.Process.GetProcessById(processID); if (process != null){ process.Kill(); }}。
Win32API函数大全使用详解
一、窗口函数(Window)= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = == = = = = = = = = = = = = = = = = = = = = = = = = = = = = = == =AdjustWindowRect函数功能:该函数依据所需客户矩形的大小,计算需要的窗日矩形的大小。
计算出的窗口矩形随后可以传递给CreateWindow函数,用于创建一个客户区所需大小的窗口。
函数原型:BOOL AdjustWindowRect(LPRECT lpRect ,DWORDdwStyle,BOOL bMENU);参数:lpRect:指向RECT结构的指针,该结构包含所需客户区域的左上角和右下角的坐标。
函数返回时,该结构容纳所需客户区域的窗口的左上角和右下角的坐标。
dwStyle:指定将被计算尺寸的窗口的窗口风格。
bMenu:指示窗口是否有菜单。
返回值:如果函数成功,返回值为非零;如果函数失败,返回值为零。
获取错误信息,参看GetLastError。
备注:客户矩形是指完全包含一个客户区域的最小矩形;窗日矩形是指完全包含一个窗口的最小矩形,该窗口包含客户区与非客户区。
当一个菜单条下拉出两行或更多行时,AdjustWindowRect函数不增加额外的空间。
速查:Windows NT:3.1以上版本:Windows:95以上版本:Windows CE:不支持;头文件:winuser.h;库文件:user32.lib。
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = == = = = = = = = = = = = = = = = = = = = = = = = = = = = = =AdjustWindowRectEX函数功能:该函数依据所需客户矩形大小,计算需要的窗口矩形的大小。
Win32API函数大全使用详解
一、窗口函数(Window)= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = == = = = = = = = = = = = = = = = = = = = = = = = = = = = = = == =AdjustWindowRect函数功能:该函数依据所需客户矩形的大小,计算需要的窗日矩形的大小。
计算出的窗口矩形随后可以传递给CreateWindow函数,用于创建一个客户区所需大小的窗口。
函数原型:BOOL AdjustWindowRect(LPRECT lpRect ,DWORDdwStyle,BOOL bMENU);参数:lpRect:指向RECT结构的指针,该结构包含所需客户区域的左上角和右下角的坐标。
函数返回时,该结构容纳所需客户区域的窗口的左上角和右下角的坐标。
dwStyle:指定将被计算尺寸的窗口的窗口风格。
bMenu:指示窗口是否有菜单。
返回值:如果函数成功,返回值为非零;如果函数失败,返回值为零。
获取错误信息,参看GetLastError。
备注:客户矩形是指完全包含一个客户区域的最小矩形;窗日矩形是指完全包含一个窗口的最小矩形,该窗口包含客户区与非客户区。
当一个菜单条下拉出两行或更多行时,AdjustWindowRect函数不增加额外的空间。
速查:Windows NT:3.1以上版本:Windows:95以上版本:Windows CE:不支持;头文件:winuser.h;库文件:user32.lib。
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = == = = = = = = = = = = = = = = = = = = = = = = = = = = = = =AdjustWindowRectEX函数功能:该函数依据所需客户矩形大小,计算需要的窗口矩形的大小。
Windows_API函数大全及应用方法
Windows_API函数大全及应用方法Windows API函数我们知道VB可以做很多事,但是有些事情,特别是涉及对Windows操作系统的访问,还需要借助Win32 API函数(Microsoft Win32 Application Programming Interface的缩写)。
API 函数是一组用C语言编写的函数,总共约有一千来个。
原本是为C语言编程人员而编写的,但也可以在VB应用程序中调用。
按功能划分,Win32 API函数大致涉及以下几个方面:窗口管理、图形设备接口、系统管理和多媒体技术。
Win32 API函数以动态链接库DLL提供给用户,可以在任何语言中调用。
DLL在程序运行时装入,随时响应程序的调用,不必在设计时就将文件存放在工程中,这就是动态链接的意思。
正因为如此,一个DLL程序可以同时为多个程序所调用。
在VB中引用API函数,需要事先通过Declare函数,声明要引用的DLL文件名称以及相应函数的参量。
然后便可像使用VB函数一样使用API函数。
我们看以下类似的声明语句:Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As LongGetComputerName是API函数名,kernel32是库名。
括号中的ByVal lpBuffer As String, nSize As Long就是函数的参量。
最后面的Long表示函数返回值的数据类型。
本节通过例子说明Win32 API 函数的应用。
Windows在创建每个窗体时,都会赋给它一个与众不同的编号,这就是窗体的句柄。
在Windows中,窗体与控件都被看成是窗体(窗口)。
窗体的句柄保存在自己的hwnd属性中。
WindowsAPI函数大全(API之打印函数)
WindowsAPI函数大全(API之打印函数)API之打印函数AbortDoc 取消一份文档的打印AbortPrinter 删除与一台打印机关联在一起的缓冲文件AddForm 为打印机的表单列表添加一个新表单AddJob 用于获取一个有效的路径名,以便用它为作业创建一个后台打印文件。
它也会为作业分配一个作业编号AddMonitor 为系统添加一个打印机监视器AddPort 启动"添加端口"对话框,允许用户在系统可用端口列表中加入一个新端口AddPrinter 在系统中添加一台新打印机AddPrinterConnection 连接指定的打印机AddPrinterDriver 为指定的系统添加一个打印驱动程序AddPrintProcessor 为指定的系统添加一个打印处理器AddPrintProvidor 为系统添加一个打印供应商AdvancedDocumentProperties 启动打印机文档设置对话框ClosePrinter 关闭一个打开的打印机对象ConfigurePort 针对指定的端口,启动一个端口配置对话框ConnectT oPrinterDlg 启动连接打印机对话框,用它同访问网络的打印机连接DeleteForm 从打印机可用表单列表中删除一个表单DeleteMonitor 删除指定的打印监视器DeletePort 启动"删除端口"对话框,允许用户从当前系统删除一个端口DeletePrinter 将指定的打印机标志为从系统中删除DeletePrinterConnection 删除与指定打印机的连接DeletePrinterDriver 从系统删除一个打印机驱动程序DeletePrintProcessor 从指定系统删除一个打印处理器DeletePrintProvidor 从系统中删除一个打印供应商DeviceCapabilities 利用这个函数可获得与一个设备的能力有关的信息DocumentProperties 打印机配置控制函数EndDocAPI 结束一个成功的打印作业EndDocPrinter 在后台打印程序的级别指定一个文档的结束EndPage 用这个函数完成一个页面的打印,并准备设备场景,以便打印下一个页EndPagePrinter 指定一个页在打印作业中的结尾EnumForms 枚举一台打印机可用的表单EnumJobs 枚举打印队列中的作业EnumMonitors 枚举可用的打印监视器EnumPorts 枚举一个系统可用的端口EnumPrinterDrivers 枚举指定系统中已安装的打印机驱动程序EnumPrinters 枚举系统中安装的打印机EnumPrintProcessorDatatypes 枚举由一个打印处理器支持的数据类型EnumPrintProcessors 枚举系统中可用的打印处理器Escape 设备控制函数FindClosePrinterChangeNotification 关闭用FindFirstPrinterChangeNotification函数获取的一个打印机通告对象FindFirstPrinterChangeNotification 创建一个新的改变通告对象,以便我们注意打印机状态的各种变化FindNextPrinterChangeNotification 用这个函数判断触发一次打印机改变通告信号的原因FreePrinterNotifyInfo 释放由FindNextPrinterChangeNotification函数分配的一个缓冲区GetForm 取得与指定表单有关的信息GetJob 获取与指定作业有关的信息GetPrinter 取得与指定打印机有关的信息GetPrinterData 为打印机设置注册表配置信息GetPrinterDriver 针对指定的打印机,获取与打印机驱动程序有关的信息GetPrinterDriverDirectory 判断指定系统中包含了打印机驱动程序的目录是什么GetPrintProcessorDirectory 判断指定系统中包含了打印机处理器驱动程序及文件的目录OpenPrinter 打开指定的打印机,并获取打印机的句柄PrinterMessageBox 在拥有指定打印作业的系统上显示一个打印机出错消息框PrinterProperties 启动打印机属性对话框,以便对打印机进行配置ReadPrinter 从打印机读入数据ResetDC 重设一个设备场景ResetPrinter 改变指定打印机的默认数据类型及文档设置ScheduleJob 提交一个要打印的作业SetAbortProc 为Windows指定取消函数的地址SetForm 为指定的表单设置信息SetJob 对一个打印作业的状态进行控制SetPrinter 对一台打印机的状态进行控制SetPrinterData 设置打印机的注册表配置信息StartDoc 开始一个打印作业StartDocPrinter 在后台打印的级别启动一个新文档StartPage 打印一个新页前要先调用这个函数StartPagePrinter 在打印作业中指定一个新页的开始WritePrinter 将发送目录中的数据写入打印机。
WINAPI函数大全
WINAPI函数大全Windows函数大全Api函数名函数说明 WIN9X可用 WINNT可用-------------------------------------------------------------------------------------------------AbortDoc 终止一项打印作业是是AbortPath 终止或取消DC中的一切路径是是AbortPrinter 删除打印机缓冲文件是是AbortSystemShutdowna 停止系统工作是是AccessCheck 检验客户访问权限是是AccessCheckAndAuditAlarm 检验访问,产生声音或警报是是ActivateKeyboardLayout 激活一个新的键盘设备是是AddAccessAllowedAce 将ACCESS_ALLOWED_ACE加入ACL 是是AddAccessDeniedAce 将ACCESS_DENIED_ACE加入ACL 是是AddAce 将ACE加入一个已存在的ACL 是是AddAtom 将一个字符串加入本地原子表是是AddAuditAccessAce 将SYSTEM_AUDIT_ACE加入ACL 是是AddFontResource 将一种字体加入字体表是是AddForm 加入一个打印机窗体是是AddJob 启动一个打印作业是是AddMonitor 加入一个打印机管理器是是AddPort 加入一个打印机端口是是AddPrintProcessor 将打印处理器复制到打印机服务器中是是AddPrintProvidor 加入一个打印机支持器是是AddPrinter 在打印机服务器上建立一个打印机是是AddPrinterConnection 为当前用户建立与打印机的联系是是AddPrinterDriver 将打印机驱动程序复制到打印机服务器中是是AdjustTokenGroups 使能/取消令牌中的群是是AdjustTokenPrivileges 使能/取消令牌特权是是AdjustWindowRect 计算所需窗口矩形的大小是是AdjustWindowRectEx 计算所需窗口矩形的大小是是AdvancedDocumentProperties 进行打印机高级设置是是AllocConsole 为当前进程建立控制台是是AllocateAndInitializeSid 分配和初始化SID 是是AllocateLocallyUniqueId 分配LUID 是是AngleArc 按指定角度画弧是是AnimatePalette 替换逻辑调色板中的项目是是AnyPopup 标识弹出式窗口是否存在是是AppendMenu 在菜单中加入新的项目是是Arc 画弧是是ArcT o 画椭圆弧是是AreAllAccessesGranted 检查所有要求的访问是是AreAnyAccessesGranted 检查任何要求的访问是是ArrangeIconicWindows 排列最小化的子窗口是是AttachThreadInput 将线索彼此相连是是auxGetDevCaps 获取附属设备容量是是auxGetNumDevs 返回附属设备数量是是auxGetVolume 获取当前卷设置是是auxOutMessage 向输出设备发送消息是是auxSetVolume 设置附属设备卷是是BackupEventLog 将事件记录保存至后备文件是是BackupRead 产生磁带备份读是是BackupSeek 产生磁带备份查寻是是BackupWrite 产生磁带备份写是是Beep 产生一个声调是是BeginDeferWindowPos 创建一个窗口位置结构是是BeginPaint 准备一个画图窗是是BeginPath 开始一个路径等级是是BeginUpdateResource 在可执行文件中开始资源文件更新是是BitBlt 在设备描述表间复制位图是是BringWindowT oTop 恢复重叠窗是是BroadcastSystemMessage 是是BuildCommDCB 向DCB中传送设备定义字符串是是BuildCommDCBAndTimeouts 建立COMMDCB并设置超时值是是CallMsgFilter 将消息传给消息过滤过程是是CallNamedPipe 多管道操作是是CallNextHookEx 调中链中的下一个挂钩过程是是CallWindowProc 将消息传答窗口函数是是CancelDC 取消指定DC上的任何悬而未决的操作是是CascadeWindows 是是ChangeClipboardChain 从剪贴板查看窗口上删除一个窗口是是ChangeMenu 是是ChangeServiceConfig 修改服务参数是是CharLower 将字符或字符串变为小写是是CharLowerBuff 将字符串变为小写是是CharNext 转到字符串的下一个字符是是CharPrev 转到字符串的上一个字符是是CharT oOem 把字符串转换成OEM字符是是CharT oOemBuff 把字符串转换成OEM字符是是CharUpper 将字符或字符串变为大写是是CharUpperBuff 将字符串变为小写是是CheckColorsInGamut 检查设备调色板中是否有色彩是是CheckDlgButton 用对话按钮修改复选标记是是CheckMenuItem 修改菜单项的复选标记属性是是CheckMenuRadioItem 是是CheckRadioButton 用单选按钮放置一个复选标记是是ChildWindowFromPoint 确定包含有点的窗口是是ChildWindowFromPointEx是是ChooseColor 建立一个色彩选择对话框是是ChooseFont 建立一个字体选择对话框是是ChoosePixelFormat 是是Chord 画一条弦是是ClearCommBreak 恢复字符传输是是ClearCommError 允许出错后进行通信是是ClearEventLog 消除事件记录是是ClientToScreen 将客户点转换成屏幕坐标是是ClipCursor 将光标限制在矩形内是是CloseClipboard 关闭剪贴板是是CloseDesktop 是是CloseDriver 光闭可装入的多媒体驱动程序是是CloseEnhMetaFile 光闭增强型图元文件DC 是是CloseEventLog 光闭事件记录句柄是是CloseFigure 光闭路径中的一个数是是CloseHandle 关闭打开的对象句柄是是CloseMetaFile 关闭WINDOWS图元文件DC 是是ClosePrinter 关闭打开的打印机是是CloseServiceHandle 关闭Service Control Manager对象是是CloseWindow 最小化窗口是是CloseWindowStation 是是ColorMatchToTarget 控件预览设备描述表是是CombineRgn 将两个区域合成一个区域是是CombineTransform 将两个变换式结合在一起是是CommConfigDialog 是是CommDlgExtendedError 返回出错数据是是CommandLineT oArgv 是是CompareFileTime 比较两个64位文件时间是是CompareString 比较两个局部指定字符串是是ConfigurePort 配置打印机端口是是ConnectNamedPipe 等待要连接的客户机是是ConnectT oPrinterDlg 显示浏览对话并连接网络打印机是是ContinueDebugEvent 使调试线索继续是是ControlService 向服务器发送控件是是ConvertDefaultLocale 将缺省局部转换为实际的局部值是是CopyAcceleratorTable 复制一个加速表是是CopyCursor 复制一个光标是是CopyEnhMetaFile 复制增强型图元文件是是CopyFile 复制文件是是CopyIcon 复制图标是是CopyImage 是是CopyLZFile 是是CopyMetaFile 复制Windows图元文件是是CopyRect 复制矩形大小是是CopySid 将SID复制到缓冲区中是是CountClipboardFormats 返回剪贴板格式的数量是是CreateAcceleratorT able 建立加速表是是CreateBitmap 建立独立于设备的内存位图是是CreateBitmapIndirect 用BITMAP结构建立位图是是CreateBrushIndirect 用指定属性建立一个刷子是是CreateCaret 为系统脱字号建立新的形状是是CreateColorSpace 建立逻辑色影区域是是CreateCompatibleBitmap 建立与DC相兼容的位图是是CreateCompatibleDC 建立与指定DC相兼容的DC 是是CreateConsoleScreenBuffer 将句柄返回给新的屏幕缓冲区是是CreateCursor 用指定的尺寸建立一个光标是是CreateDC建立设备描述表是是CreateDIBPatternBrush 从DIB中建立图案刷子是是CreateDIBPatternBrushPt 从位图中建立逻辑刷子是是CreateDIBSection 是是CreateDIBitmap 从DIB spec中建立位图句柄是是CreateDesktop 是是CreateDialogIndirectParam 从内存模块中建立非模态对话框是是CreateDialogParam 建立非模态对话框是是CreateDirectory 建立一个新目录是是CreateDirectoryEx 用模板属性建立一个目录是是CreateDiscardableBitmap 建立可放弃位图是是CreateEllipticRgn 建立椭圆区域是是CreateEllipticRgnIndirect 建立椭圆区域是是CreateEnhMetaFile 建立增强型图元文件DC 是是CreateEvent 返回新事件对象一个句柄是是CreateFile 建立、打开或截断文件是是CreateFileMapping 返回新文件映像对象一个句柄是是CreateFont 建立逻辑字体是是CreateFontIndirect 用LOGFONT结构建立字体是是CreateHalftonePalette 为设备描述表建立中间色调调色板是是CreateHatchBrush 建立影线刷子是是CreateIC 建立信息上下文是是CreateIcon 建立有指定属性的图标是是CreateIconFromResource 建立图标或光标是是CreateIconIndirect 建立图标或光标是是CreateIoCompletionPort 是是CreateMDIWindow 建立新的MDI窗口是是CreateMailslot 建立Mailsolt 是是CreateMenu 建立菜单是是CreateMetaFile 建立WINDOWS图元DC 是是CreateMutex 将句柄返回给MUTEX对象是是CreateNamedPipe 建立命名管道实例是是CreatePalette 建立逻辑色彩调色板是是CreatePatternBrush 从位图中建立图案刷子是是CreatePen 建立逻辑画笔是是CreatePenIndirect 用LOGPEN结构建立画笔是是CreatePipe 建立匿名管道是是CreatePolyPolygonRgn 建立由多边形组成的区域是是CreatePolygonRgn 建立多边形区域是是CreatePopupMenu 建立弹出式菜单是是CreatePrivateObjectSecurity 分配并初始化保护SD 是是CreateProcess 建立新的进程和线索对象是是CreateProcessAsUser 建立指定用户的新进程是是CreateRectRgn 建立矩形区域是是CreateRectRgnIndirect 用RECT结构建立一个区域是是CreateRemoteThread 在另一进程中建立线索是是CreateRoundRectRgn 建立圆角矩形是是CreateScalableFontResource 建立带字体信息的资源文件是是CreateSemaphore 将句柄返回给新的信号量是是CreateService 建立服务对象是是CreateSolidBrush 用指定颜色建立实心刷子是是CreateTapePartition 建立新的磁带分区是是CreateThread 建立新的线索是是CreateWindowEx 建立窗口是是DPtoLP 将设备坐标转换位逻辑坐标是是DdeAbandonTransaction 取消异步交互是是DdeAccessData 访问DDE数据对象是是DdeAddData向DDE数据对象中加入数据是是DdeClientTransaction 开始DDE数据事务是是DdeCmpStringHandles 比较两个DDE字符串句柄是是DdeConnect 建立与服务器的对话是是DdeConnectList 建立多个DDE对话是是DdeCreateDataHandle 建立DDE数据句柄是是DdeCreateStringHandle 建立DDE字符串句柄是是DdeDisconnect 终止DDE对话是是DdeDisconnectList 取消DDE对话表列是是DdeEnableCallback 使能或取消一个或多个DDE对话是是DdeFreeDataHandle 释放DDE数据对象是是DdeFreeStringHandle 释放DDE字符串句柄是是DdeGetData 将数据从DDE数据对象中复制到缓冲区是是DdeGetLastError 返回由DDEML函数设置的出错代码是是DdeImpersonateClient DDE服务器模拟客户机是是DdeInitialize 用DDEML登记应用程序是是DdeKeepStringHandle 为字符串句柄增加可用记录是是DdeNameService 登记取消服务器名称是是DdePostAdvise 提示服务器向客户机发送建议数据是是DdeQueryConvInfo 返回关于DDE对话的信息是是DdeQueryNextServer 在对话表列中获得下一个句柄是是DdeQueryString 将字符串句柄文本复制到缓冲区是是DdeReconnect 重建DDE对话是是DdeSetQualityOfService 指明服务的DDE质量是是DdeSetUserHandle 将用户定义句柄与事务建立关联是是DdeUnaccessData 释放DDE数据对象是是DdeUninitialize 释放应用程序的DDEML资源是是DebugActiveProcess 连接调试进程是是DebugBreak 建立断点是是DefDlgProc 提供缺省窗口消息进程是是DefDriverProc 定义缺省消息处理器是是DefFrameProc 缺省MDI框架窗口消息进程是是DefMDIChildProc 缺省MDI子窗口消息进程是是DefWindowProc 调用缺省窗口过程是是DeferWindowPos 更新窗口位置结构是是DefineDosDevice 定义、重定义或删除DOS的设备名是是DeleteAce 从已存在的ACL中删除ACE 是是DeleteAtom 删除一个原子是是DeleteColorSpace 删除指定色彩空间是是DeleteCriticalSection 删除临界部分是是DeleteDC 删除设备描述表是是DeleteEnhMetaFile 取消增强图元文件句柄是是DeleteFile 删除文件是是DeleteForm 删除打印机窗体层差是是DeleteMenu 删除菜单项是是DeleteMetaFile 取消WINDOWS图元文件句柄是是DeleteMonitor 删除打印机监视器是是DeleteObject 从内存删除一个对象是是DeletePort 删除打印机端口是是DeletePrintProcessor 删除打印机处理器是是DeletePrintProvidor 删除打印机提供者是是DeletePrinter 删除打印机服务器上的打印机是是DeletePrinterConnection 删除与打印机的连接是是DeletePrinterDriver 删除打印机驱动程序是是DeleteService 从SC MANAGER数据库中删除服务是是DeregisterEventSource 光闭事件句柄是是DescribePixelFormat是是DestroyAcceleratorTable 取消加速表是是DestroyCaret 取消当前脱字号是是DestroyCursor 取消CREATECURSOR建立的光标是是DestroyIcon 取消由CREATEICON建立的图标是是DestroyMenu 取消菜单并释放内存是是DestroyPrivateObjectSecurity 删除被保护的服务器对象的SD 是是DestroyWindow 取消窗口是是DeviceCapabilities 返回设备驱动程序的功能是是DeviceIoControl 直接调用驱动程序是是DialogBoxIndirectParam 从内存模块中建立对话框是是DisableThreadLibraryCalls 是是DisconnectNamedPipe 切断命名管道的服务器终端是是DispatchMessage 向窗口发送消息是是DlgDirList 填充目录列表框是是DlgDirListComboBox 填充目录列表框是是DlgDirSelectComboBoxEx 从目录列表框中返回用户选择是是DlgDirSelectEx 从目录列表框中返回用户选择是是DoEnvironmentSubst 是是DocumentProperties 配置打印机设置是是DosDateTimeT oFileTime 将MS-DOS日期时间转换为64位格式是是DragAcceptFiles 登记窗口是否接受托动文件的内容是是DragDetect 是是DragFinish 释放分配用于托动文件的内容是是DragObject 是是DragQueryFile 返回托动的文件名是是DragQueryPoint 返回鼠标位置是是DrawAnimatedRects 是是DrawCaption 是是DrawEdge是是DrawEscape 实现非GDI可画图设备方法是是DrawFocusRect 用焦点风格画矩形是是DrawFrameControl 是是DrawIcon 在指定设备描述表中画一个图标是是DrawIconEx 是是DrawMenuBar 重显示菜单栏是是DrawState 是是DrawText 在矩形中画出已格式化文本是是DrawTextEx 是是DrvGetModuleHandle 获得可安装驱动程序的例子句柄是是DuplicateHandle 复制对象句柄是是DuplicateIcon 是是DuplicateToken 复制访问令牌是是Ellipse 画椭圆是是EmptyClipboard 清空剪贴板并释放数据句柄是是EnableMenuItem 使能、取消或使菜单项不可激活是是EnableScrollBar 使能、取消滚动条是是EnableWindow 设备窗口使能状态是是EndDeferWindowPos 更新窗口的位置及大小是是EndDialog 隐藏对话框是是EndDoc 结束打印作业是是EndDocPrinter 结束打印作业是是EndPage 结束一页是是EndPagePrinter 结束打印页是是EndPaint 在指定窗口中标记图画结尾标志是是EndPath 结束路径是是EndUpdateResource 在可执行文件中结束资源更新是是EnterCriticalSection 加入临界部分是是EnumCalendarInfo 是是EnumChildWindows 将子窗口句柄传给回调函数是是EnumClipboardFormats 返回CLIPBOARD格式是是EnumDateFormats 枚举局部指定数据格式是是EnumDependentServices 枚举依赖于设备的服务是是EnumDesktopWindows 是是EnumDesktops 是是EnumEnhMetaFile 用增强图元文件返回GDI调用是是EnumFontFamilies 返回指定家族的字体是是EnumFontFamiliesEx 返回指定家族的字体是是EnumFonts 枚举指定设备上的字体是是EnumForms 枚举所支持的打印机窗体是是EnumICMProfiles 枚举可用的颜色分布是是EnumJobs 获取打印作业信息是是EnumMetaFile 用WINDOWS图元文件返回GDI调用是是EnumMonitors 枚举可用监视器是是EnumObjects 枚举设备描述表中的画笔和刷子是是EnumPorts 枚举可用打印机端口是是EnumPrintProcessorDatatypes 枚举打印机所支持的数据类型是是EnumPrintProcessors 枚举已安装的打印机处理器是是EnumPrinterDrivers 枚举已安装的打印机驱动程序是是EnumPrinterPropertySheets 是是EnumPrinters 是是EnumProps 返回窗口属性表列是是EnumPropsEx 返回窗口属性表列是是EnumResourceLanguages 列出语言资源是是EnumResourceNames 列出资源名称是是EnumResourceTypes 列出资源类型是是EnumServicesStatus 枚举SC管理器数据库中的服务是是EnumSystemCodePages 枚举已安装的可用系统代码页是是EnumSystemLocales 枚举已安装的系统局部是是EnumThreadWindows 返回线索窗口是是EnumTimeFormats 枚举本地指定时间格式是是EnumWindowStations 是是EqualPrefixSid 检查两个SLD前缀是否相等是是EqualRect 确定两矩形是否相等待是是EqualRgn 比较两区域是否相等是是EqualSid 检查两SLD安全ID是否相等是是EraseTape 删除磁带的指定段是是Escape 允许访问设备是是EscapeCommFunction 发送扩展COMM函数是是ExcludeClipRect 改变剪裁区是是ExcludeUpdateRgn 从剪裁区中排斥更新区域是是ExitProcess 退出当前进程是是ExitThread 退出当前线索是是ExitWindows 关闭WINDOWS 是是ExitWindowsEx 关闭WINDOWS 是是ExpandEnvironmentStrings 扩充环境变量字符串是是ExtCreatePen 建立逻辑画笔是是ExtCreateRegion 从区域数据中建立一个区域是是ExtEscape 允许访问私有设备是是ExtFloodFill 用当前刷子填充区域是是ExtSelectClipRgn 选择一块区域作为剪裁区是是ExtTextOut 在矩形区域中输出一个字符串是是ExtractAssociatedIcon 从文件或相关EXE中获取图标句柄是是ExtractIcon 从可执行文件中返回图标句柄是是ExtractIconEx是是FatalAppExit 结束一个应用程序是是FatalExit 向调试者返回控件是是FileTimeToDosDateTime 将文件时间转换为MS-DOS日期是是FileTimeToLocalFileTime 将UTC文件时间转换成本地文件时间是是FileTimeToSystemTime 将64位时间转换为系统时间是是FillConsoleOutputAttribute 将属性写入屏幕缓冲区是是FillConsoleOutputCharacter 将字符写入屏幕缓冲区是是FillPath 填充当前路径是是FillRect 用指定刷子填充矩形区域是是FillRgn 用刷子填充区域是是FindAtom 从本地原子表中返回字符串原子是是FindClose 关闭查找文件描述表是是FindCloseChangeNotification 光闭文件或目录修改等待是是FindClosePrinterChangeNotification 是是FindEnvironmentString 是是FindExecutable 返回可执行文件名及句柄是是FindFirstChangeNotification 设置文件或目录修改等待是是FindFirstFile 查找第一个匹配文件是是FindFirstFreeAce 返回指向第一个空闲ACL字节的指针是是FindFirstPrinterChangeNotification 是是FindNextChangeNotification 请求对下一个文件或目录变化的通知是是FindNextFile 查找下一个匹配文件是是FindNextPrinterChangeNotification 是是FindResource 在模块中寻找资源是是FindResourceEx 在模块中寻找资源是是FindText 建立查找文本对话框是是FindWindow 返回一个与类和窗口名相关的窗口句柄是是FindWindowEx 是是FixBrushOrgEx 是是FlashWindow 使窗口闪烁一次是是FlattenPath 将弧变为线是是FloodFill 用当前刷子填充区域是是FlushConsoleInputBuffer 清除控制台输入缓冲区是是FlushFileBuffers 清除文件缓冲区是是FlushInstructionCache 填满指令缓冲区是是FlushViewOfFile 用映像视图填充文件是是FoldString 变换字符串是是FormatMessage 格式化消息字符串是是FrameRect 用指定刷子画一个窗口边框是是FrameRgn 在区域四周画出边框是是FreeConsole 释放控制台是是FreeDDElParam 释放DDE消息IPARAM 是是FreeEnvironmentStrings 是是FreeLibrary 卸载库模块是是FreeLibraryAndExitThread 是是FreeResource 是是FreeSid 释放SID 是是GdiComment 向增强型图元文件中加入注释是是GdiFlush 使当前GDI闪烁是是GdiGetBatchLimit 返回缓冲GDI函数数量是是GdiSetBatchLimit 设置缓冲GDI函数数量是是GenerateConsoleCtrlEvent 向控制台进程组发送信号是是GetACP 获取ANSI系统代码页是是GetAce 返回指向ACL中的ACE的指针是是GetAclInformation 返回访问控件表信息是是GetActiveWindow 返回活动窗口句柄是是GetArcDirection 返回弧和矩形的绘画方向是是GetAspectRatioFilterEx 返回当前ASPECT-RATIO过滤器是是GetAsyncKeyState 确定键的状态是是GetAtomName 返回本地原子字符串是是GetBinaryType 确定二进制可执行文件类型是是GetBitmapBits 将位图复制到缓冲区是是GetBitmapDimensionEx 返回位图宽和高是是GetBkColor 返回当前背景色是是GetBkMode 返回背景模式是是GetBoundsRect 返回当前相邻矩形是是GetBrushOrgEx 是是GetCPInfo 获取代码页信息是是GetCapture 是是GetCaretBlinkTime 返回脱字号闪烁时间是是GetCaretPos 返回当前脱字号位置是是GetCharABCWidths 返回字符宽度是是GetCharABCWidthsFloat 返回字符宽度是是GetCharWidth 返回字符宽度是是GetCharWidth32 返回字符宽度是是GetCharWidthFloat 返回部分字符宽度是是GetCharacterPlacement 获取字符串属性数据是是GetClassInfo 返回窗口类信息是是GetClassLong 返回窗口类数据是是GetClassName 返回窗口类名称是是GetClassWord 返回窗口类内存字是是GetClientRect 返回窗口客户区坐标是是GetClipBox 取剪裁区域框是是GetClipCursor 返回限制光标的矩形的坐标是是GetClipRgn 返回当前剪辑域是是GetClipboardData返回剪贴板数据的句柄是是GetClipboardFormatName 返回登录的剪贴板格式名是是GetClipboardOwner 返回剪贴板所有者窗口句柄是是GetClipboardViewer 返回第一个剪贴板浏览窗口句柄是是GetColorAdjustment 获取设备描述表调整值是是GetColorSpace 获取指定色彩空间是是GetCommConfig 是是GetCommMask 返回COMM事件屏蔽是是GetCommModemStatus 返回调制解调器控制登录值是是GetCommProperties 返回COMM设备属性是是GetCommState 返回COMM设备控制块是是GetCommTimeouts 返回COMM设备超时特性值是是GetCommandLine 返回指向命令行的指针是是GetCompressedFileSize 是是GetComputerName 取回当前计算机名是是GetConsoleCP 为控制台输入获取代码页是是GetConsoleCursorInfo 返回光标大小是是GetConsoleMode 返回控制台输入输出模式是是GetConsoleOutputCP 为控制台输出获取代码页是是GetConsoleScreenBufferInfo 返回屏幕缓冲区信息是是GetConsoleTitle 返回控制台窗口标题是是GetCurrencyFormat 是是GetCurrentDirectory 返回当前目录是是GetCurrentObject 返回当前对象是是GetCurrentPositionEx 返回逻辑单元位置是是GetCurrentProcess 返回当前进程的句柄是是GetCurrentProcessId 返回当前进程ID值是是GetCurrentThread 返回当前线索的句柄是是GetCurrentThreadId 返回当前线索ID值是是GetCursor 返回当前光标的句柄是是GetCursorPos 返回当前光标的位置是是GetDC 返回窗口描述表句柄是是GetDCEx 返回显示描述表的句柄是是GetDCOrgEx 返回设备描述表的转换起点是是GetDIBColorTable 是是GetDIBits 将DIB位复制到缓冲区中是是GetDateFormat 获取本地日期格式是是GetDefaultCommConfig 是是GetDesktopWindow 返回桌面窗口句柄是是GetDeviceCaps 返回设备性能是是GetDeviceGammaRamp 获取显示器的辉度系数是是GetDialogBaseUnits 返回对话基础单元是是GetDiskFreeSpace 返回空闲磁盘空间是是GetDlgCtrlID 返回儿子窗口的ID值是是GetDlgItem 返回对话框控件句柄是是GetDlgItemInt 将对话框文本转换为整数是是GetDlgItemText 返回对话框控件文本是是GetDoubleClickTime 返回鼠标双击时间是是GetDriveType 返回指定驱动器类型是是GetDriverModuleHandle 返回驱动程序模块例子句柄是是GetEnhMetaFile 建立增强图元文件是是GetEnhMetaFileBits 将增强图元文件值复制到缓冲区是是GetEnhMetaFileDescription 返回增强图元文件的标题及建立者是是GetEnhMetaFileHeader 返回增强图元文件头是是GetEnhMetaFilePaletteEntries 返回增强图元文件调色板入口是是GetEnvironmentStrings 返回指向环境块的指针是是GetEnvironmentVariable 返回过程环境变量是是GetExitCodeProcess 返回过程中断代码是是GetExitCodeThread 返回线索中断代码是是GetExpandedName 取压缩文件的原文件名是是GetFileAttributes 返回文件属性是是GetFileInformationByHandle 返回文件信息是是GetFileSecurity 获取文件或目录安全信息是是GetFileSize 返回指定文件大小是是GetFileTime 返回文件64位时间是是GetFileTitle 返回文件名是是GetFileType 返回文件类型是是GetFileVersionInfo 返回文件的版本信息是是GetFileVersionInfoSize 返回可用版本信息大小是是GetFocus 返回当前焦点窗口句柄是是GetFontData 返回字体数据是是GetFontLanguageInfo 获取字体显示描述表的信息是是GetForegroundWindow 返回前景窗口句柄是是GetForm 获取打印机窗口信息是是GetFullPathName 返回文件的路径名是是GetGlyphOutline 取回轮廓数据是是GetGraphicsMode 取回指定DC的图形模式是是GetHandleInformation 是是GetICMProfile 返回设备场景的色彩映像是是GetIconInfo 返回图标或光标信息是是GetInputState 确定鼠标、键盘、定时器状态是是GetJob 获取打印作业信息是是GetKBCodePage 获取OEM系统代码页是是GetKernelObjectSecurity 返回内核对象SD 是是GetKerningPairs 返回当前字体内核对是是GetK。
WindowsAPI函数大全(API之进程和线程函数)
WindowsAPI函数大全(API之进程和线程函数)API之进程和线程函数CancelWaitableTimer 这个函数用于取消一个可以等待下去的计时器操作CallNamedPipe 这个函数由一个希望通过管道通信的一个客户进程调用ConnectNamedPipe 指示一台服务器等待下去,直至客户机同一个命名管道连接CreateEvent 创建一个事件对象CreateMailslot 创建一个邮路。
返回的句柄由邮路服务器使用(收件人)CreateMutex 创建一个互斥体(MUTEX)CreateNamedPipe 创建一个命名管道。
返回的句柄由管道的服务器端使用CreatePipe 创建一个匿名管道CreateProcess 创建一个新进程(比如执行一个程序)CreateSemaphore 创建一个新的信号机CreateWaitableTimer 创建一个可等待的计时器对象DisconnectNamedPipe 断开一个客户与一个命名管道的连接DuplicateHandle 在指出一个现有系统对象当前句柄的情况下,为那个对象创建一个新句柄ExitProcess 中止一个进程FindCloseChangeNotification 关闭一个改动通知对象FindExecutable 查找与一个指定文件关联在一起的程序的文件名FindFirstChangeNotification 创建一个文件通知对象。
该对象用于监视文件系统发生的变化FindNextChangeNotification 重设一个文件改变通知对象,令其继续监视下一次变化FreeLibrary 释放指定的动态链接库GetCurrentProcess 获取当前进程的一个伪句柄GetCurrentProcessId 获取当前进程一个唯一的标识符GetCurrentThread 获取当前线程的一个伪句柄GetCurrentThreadId 获取当前线程一个唯一的线程标识符GetExitCodeProces 获取一个已中断进程的退出代码GetExitCodeThread 获取一个已中止线程的退出代码GetHandleInformation 获取与一个系统对象句柄有关的信息GetMailslotInfo 获取与一个邮路有关的信息GetModuleFileName 获取一个已装载模板的完整路径名称GetModuleHandle 获取一个应用程序或动态链接库的模块句柄GetPriorityClass 获取特定进程的优先级别GetProcessShutdownParameters 调查系统关闭时一个指定的进程相对于其它进程的关闭早迟情况GetProcessTimes 获取与一个进程的经过时间有关的信息GetProcessWorkingSetSize 了解一个应用程序在运行过程中实际向它交付了多大容量的内存GetSartupInfo 获取一个进程的启动信息GetThreadPriority 获取特定线程的优先级别GetTheardTimes 获取与一个线程的经过时间有关的信息GetWindowThreadProcessId 获取与指定窗口关联在一起的一个进程和线程标识符LoadLibrary 载入指定的动态链接库,并将它映射到当前进程使用的地址空间LoadLibraryEx 装载指定的动态链接库,并为当前进程把它映射到地址空间LoadModule 载入一个Windows应用程序,并在指定的环境中运行MsgWaitForMultipleObjects 等侯单个对象或一系列对象发出信号。
Win32 API 函数大全
一、窗口函数(Window)AdjustWindowRect函数功能:该函数依据所需客户矩形的大小,计算需要的窗日矩形的大小。
计算出的窗口矩形随后可以传递给CreateWindow函数,用于创建一个客户区所需大小的窗口。
函数原型:BOOL AdjustWindowRect(LPRECT lpRect ,DWORD dwStyle,BOOL bMENU);参数:lpRect:指向RECT结构的指针,该结构包含所需客户区域的左上角和右下角的坐标。
函数返回时,该结构容纳所需客户区域的窗口的左上角和右下角的坐标。
dwStyle:指定将被计算尺寸的窗口的窗口风格。
bMenu:指示窗口是否有菜单。
返回值:如果函数成功,返回值为非零;如果函数失败,返回值为零。
获取错误信息,参看GetLastError。
备注:客户矩形是指完全包含一个客户区域的最小矩形;窗日矩形是指完全包含一个窗口的最小矩形,该窗口包含客户区与非客户区。
当一个菜单条下拉出两行或更多行时,AdjustWindowRect函数不增加额外的空间。
速查:Windows NT:3.1以上版本:Windows:95以上版本:Windows CE:不支持;头文件:winuser.h;库文件:user32.lib。
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = == = = = = = = = = = = = = = = = = = = = = = = = = = = = = =AdjustWindowRectEX函数功能:该函数依据所需客户矩形大小,计算需要的窗口矩形的大小。
计算出的窗口矩形随后可以传送给CreateWindowEx函数,用于创建一个客户区所需大小的窗口。
函数原型:BOOL AdjustWindowRectEX(LPRECT lpRect,DWORD dwStyte;BOOL bMenu;DWORD dwExStyle);参数:lpRect:指向RECT结构的指针,该结构包含所需客户区域的左上角和右下角的坐标。
C# Windows API
可编辑ppt
3
Windows API 的功能分类
文件系统:对文件的基本操作包括文件的创建,打开,读写,关闭,删除,文件属性的更改,目录操作,以及磁盘分卷 的操作,镜像文件加密文件系统等。
内存管理:主要是内存的分配,共享,释放等内容,包括虚拟内存管理,分页机制,堆管理等。
进程 线程 模块:包括进程主程序(exe),模块,动态链接库,线程的创建,遍历,同步等操作,进程与权限等。
HINSTANCE
HKEY HMODULE HWND INT
布尔型变量
字节类型 8位 8比特字节 常量 无符号整型数据32 无符号整型数据32
无符号整型数据64
浮点数据类型 对象的句柄 图标的句柄 程序实例句柄 注册表键句柄 模块的句柄 窗口句柄 32整形数据
Windows 数据类型
INT_PTR
INT32 INT64 LONG LONGLONG LONG32 LONG64 LPARAM WPARAM LPCSTR LPCWSTR LPDWORD WCHAR WINAPI WORD
可编辑ppt
5
Dlllmport[,,,,]
3
CharSet:
1
EntryPoint :
用于标识函数调用时所采用的
指示要调用的 DLL 入口点的名
是Unicode还是ANSI版本。
举例属性
称或序号。 如果你的方法名不想与api函数
同名的话,要显示指定此参数。
4
ExactSpelling=false: 告诉编译器,去决定使用
16位 Unicode字符 函数调用方式 可编辑1pp6t无符号整形
Unicode字符串常量
无符号短整形 内存大小 无符号CHAR 无符号INT 无符号long 无类型 void
windows API函数大全
VC API常用函数简单例子大全第一个:FindWindow根据窗口类名或窗口标题名来获得窗口的句柄,该函数返回窗口的句柄函数的定义:HWND WINAPI FindWindow(LPCSTR lpClassName ,LPCSTR lpWindowName);第一个参数填窗口的类名,第二个填窗口的标题名,其实是不需要同时填两个参数的,也就是说,你只要知道窗口的类名或窗口的标题就可以了,没有的那个就用NULL代替。
比如现在有一个窗口名为"无标题.txt - 记事本"的记事本程序。
那么我就可以用上面的函数获得这个窗口的句柄,那获得了这个窗口的句柄我可以干什么呢?作用可大了,因为很多操作窗口的函数,都需要窗口句柄作参数,如移动、改变窗口大小的MoveWindow函数,在这里举个例子,大家就更能体会到这个FindWindow的用法、用处。
FindWindow例子:已知一个窗口名称,写一个程序关闭该窗口,假设当前电脑正有一个窗口名为"无标题.txt - 记事本"的记事本程序运行1 #include<windows.h> //API函数的头文件2int main()3 {4 HWND wnd; //定义一个窗口句柄变量,用以存储找到的窗口句柄5 wnd=FindWindow(NULL,"无标题.txt - 记事本"); //获得窗口名为"无标题.txt - 记事本"的窗口句柄67 SendMessage(wnd,WM_CLOSE,0,0); //调用SendMessage函数,发送一个WM_CLOSE(关闭)消息给wnd窗口句柄。
89return0;10 }如果要根据窗口类名来获得窗口句柄话,只要给函数的第一个参数填类名,第二个参数窗口名填NULL,即可,用Spy++可查看窗口类名。
第二个:SendMessage根据窗口句柄发送一个消息给窗口函数定义:LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam);第一个参数是窗口句柄,第二参数个是消息类型,下面的消息表列举了所有消息,第三,四个参数是消息附带信息,解释依赖于消息类型,比如一个字符消息(WM_CHAR),那么第三个参数就储存有一个字符的ASCII码。
WindowsAPI函数清单
ActivateKeyboardLayout激活一个新的键盘布局。键盘布局定义了按键在一种物理性键盘上的位置与含义 Beep用于生成简单的声音 CharToOem将一个字串从ANSI字符集转换到OEM字符集 ClipCursor将指针限制到指定区域 ConvertDefaultLocale将一个特殊的地方标识符转换成真实的地方ID CreateCaret根据指定的信息创建一个插入符(光标),并将它选定为指定窗口的默认插入符 DestroyCaret清除(破坏)一个插入符 EnumCalendarInfo枚举在指定"地方"环境中可用的日历信息 EnumDateFormats列举指定的"当地"设置中可用的长、短日期格式 EnumSystemCodePages枚举系统中已安装或支持的代码页 EnumSystemLocales枚举系统已经安装或提供支持的"地方"设置
AdjustWindowRect给定一种窗口样式,计算获得目标客户区矩形所需的窗口大小 AnyPopup判断屏幕上是否存在任何弹出式窗口 ArrangeIconicWindows排列一个父窗口的最小化子窗口 AttachThreadInput连接线程输入函数 BeginDeferWindowPos启动构建一系列新窗口位置的过程 BringWindowToTop将指定的窗口带至窗口列表顶部 CascadeWindows以层叠方式排列窗口 ChildWindowFromPoint返回父窗口中包含了指定点的第一个子窗口的句柄 ClientToScreen判断窗口内以客户区坐标表示的一个点的屏幕坐标 CloseWindow最小化指定的窗口 CopyRect矩形内容复制
谢谢观看
CombineRgn将两个区域组合为一个新区域 CombineTransform驱动世界转换。它相当于依顺序进行两次转换 CreateCompatibleDC创建一个与特定设备场景一致的内存设备场景 CreateDC为专门设备创建设备场景 CreateEllipticRgn创建一个椭圆 CreateEllipticRgnIndirect创建一个内切于特定矩形的椭圆区域 CreateIC为专用设备创建一个信息场景 CreatePolygonRgn创建一个由一系列点围成的区域 CreatePolyPolygonRgn创建由多个多边形构成的区域。每个多边形都应是封闭的 CreateRectRgn创建一个矩形区域 CreateRectRgnIndirect创建一个矩形区域
windows Api 函数一览表
windows Api 函数大全Api函数名函数说明AbortDoc终止一项打印作业AbortPath终止或取消DC中的一切路径AbortPrinter删除打印机缓冲文件AbortSystemShutdowna停止系统工作AccessCheck检验客户访问权限AccessCheckAndAuditAlarm检验访问,产生声音或警报ActivateKeyboardLayout激活一个新的键盘设备AddAccessAllowedAce将ACCESS_ALLOWED_ACE加入ACL AddAccessDeniedAce将ACCESS_DENIED_ACE加入ACLAddAce将ACE加入一个已存在的ACLAddAtom将一个字符串加入本地原子表AddAuditAccessAce将SYSTEM_AUDIT_ACE加入ACL AddFontResource将一种字体加入字体表AddForm加入一个打印机窗体AddJob启动一个打印作业AddMonitor加入一个打印机管理器AddPort加入一个打印机端口AddPrintProcessor将打印处理器复制到打印机服务器中AddPrintProvidor加入一个打印机支持器AddPrinter在打印机服务器上建立一个打印机AddPrinterConnection为当前用户建立与打印机的联系AddPrinterDriver将打印机驱动程序复制到打印机服务器中AdjustTokenGroups使能/取消令牌中的群AdjustTokenPrivileges使能/取消令牌特权AdjustWindowRect计算所需窗口矩形的大小AdjustWindowRectEx计算所需窗口矩形的大小AdvancedDocumentProperties进行打印机高级设置AllocConsole为当前进程建立控制台AllocateAndInitializeSid分配和初始化SID AllocateLocallyUniqueId分配LUIDAngleArc按指定角度画弧AnimatePalette替换逻辑调色板中的项目AnyPopup标识弹出式窗口是否存在AppendMenu在菜单中加入新的项目Arc画弧ArcTo画椭圆弧AreAllAccessesGranted检查所有要求的访问AreAnyAccessesGranted检查任何要求的访问ArrangeIconicWindows排列最小化的子窗口AttachThreadInput将线索彼此相连auxGetDevCaps获取附属设备容量auxGetNumDevs返回附属设备数量auxGetVolume获取当前卷设置auxOutMessage向输出设备发送消息auxSetVolume设置附属设备卷BackupEventLog将事件记录保存至后备文件BackupRead产生磁带备份读BackupSeek产生磁带备份查寻BackupWrite产生磁带备份写Beep产生一个声调BeginDeferWindowPos创建一个窗口位置结构BeginPaint准备一个画图窗BeginPath开始一个路径等级BeginUpdateResource在可执行文件中开始资源文件更新BitBlt在设备描述表间复制位图BringWindowToTop恢复重叠窗BroadcastSystemMessageBuildCommDCB向DCB中传送设备定义字符串BuildCommDCBAndTimeouts建立COMMDCB并设置超时值CallMsgFilter将消息传给消息过滤过程CallNamedPipe多管道操作CallNextHookEx调中链中的下一个挂钩过程CallWindowProc将消息传答窗口函数CancelDC取消指定DC上的任何悬而未决的操作CascadeWindowsChangeClipboardChain从剪贴板查看窗口上删除一个窗口ChangeMenuChangeServiceConfig修改服务参数CharLower将字符或字符串变为小写CharLowerBuff将字符串变为小写CharNext转到字符串的下一个字符CharPrev转到字符串的上一个字符CharToOem把字符串转换成OEM字符CharToOemBuff把字符串转换成OEM字符CharUpper将字符或字符串变为大写CharUpperBuff将字符串变为小写CheckColorsInGamut检查设备调色板中是否有色彩CheckDlgButton用对话按钮修改复选标记CheckMenuItem修改菜单项的复选标记属性CheckMenuRadioItemCheckRadioButton用单选按钮放置一个复选标记ChildWindowFromPoint确定包含有点的窗口ChildWindowFromPointExChooseColor建立一个色彩选择对话框ChooseFont建立一个字体选择对话框ChoosePixelFormatChord画一条弦ClearCommBreak恢复字符传输ClearCommError允许出错后进行通信ClearEventLog消除事件记录ClientToScreen将客户点转换成屏幕坐标ClipCursor将光标限制在矩形内CloseClipboard关闭剪贴板CloseDesktopCloseDriver光闭可装入的多媒体驱动程序CloseEnhMetaFile光闭增强型图元文件DC CloseEventLog光闭事件记录句柄CloseFigure光闭路径中的一个数CloseHandle关闭打开的对象句柄CloseMetaFile关闭WINDOWS图元文件DC ClosePrinter关闭打开的打印机CloseServiceHandle关闭Service Control Manager对象CloseWindow最小化窗口CloseWindowStationColorMatchToTarget控件预览设备描述表CombineRgn将两个区域合成一个区域CombineTransform将两个变换式结合在一起CommConfigDialogCommDlgExtendedError返回出错数据CommandLineToArgvCompareFileTime比较两个64位文件时间CompareString比较两个局部指定字符串ConfigurePort配置打印机端口ConnectNamedPipe等待要连接的客户机ConnectToPrinterDlg显示浏览对话并连接网络打印机ContinueDebugEvent使调试线索继续ControlService向服务器发送控件ConvertDefaultLocale将缺省局部转换为实际的局部值CopyAcceleratorTable复制一个加速表CopyCursor复制一个光标CopyEnhMetaFile复制增强型图元文件CopyFile复制文件CopyIcon复制图标CopyImageCopyLZFileCopyMetaFile复制Windows图元文件CopyRect复制矩形大小CopySid将SID复制到缓冲区中CountClipboardFormats返回剪贴板格式的数量CreateAcceleratorTable建立加速表CreateBitmap建立独立于设备的内存位图CreateBitmapIndirect用BITMAP结构建立位图CreateBrushIndirect用指定属性建立一个刷子CreateCaret为系统脱字号建立新的形状CreateColorSpace建立逻辑色影区域CreateCompatibleBitmap建立与DC相兼容的位图CreateCompatibleDC建立与指定DC相兼容的DC CreateConsoleScreenBuffer将句柄返回给新的屏幕缓冲区CreateCursor用指定的尺寸建立一个光标CreateDC建立设备描述表CreateDIBPatternBrush从DIB中建立图案刷子CreateDIBPatternBrushPt从位图中建立逻辑刷子CreateDIBSectionCreateDIBitmap从DIB spec中建立位图句柄CreateDesktopCreateDialogIndirectParam从内存模块中建立非模态对话框CreateDialogParam建立非模态对话框CreateDirectory建立一个新目录CreateDirectoryEx用模板属性建立一个目录CreateDiscardableBitmap建立可放弃位图CreateEllipticRgn建立椭圆区域CreateEllipticRgnIndirect建立椭圆区域CreateEnhMetaFile建立增强型图元文件DC CreateEvent返回新事件对象一个句柄CreateFile建立、打开或截断文件CreateFileMapping返回新文件映像对象一个句柄CreateFont建立逻辑字体CreateFontIndirect用LOGFONT结构建立字体CreateHalftonePalette为设备描述表建立中间色调调色板CreateHatchBrush建立影线刷子CreateIC建立信息上下文CreateIcon建立有指定属性的图标CreateIconFromResource建立图标或光标CreateIconIndirect建立图标或光标CreateIoCompletionPortCreateMDIWindow建立新的MDI窗口CreateMailslot建立MailsoltCreateMenu建立菜单CreateMetaFile建立WINDOWS图元DCCreateMutex将句柄返回给MUTEX对象CreateNamedPipe建立命名管道实例CreatePalette建立逻辑色彩调色板CreatePatternBrush从位图中建立图案刷子CreatePen建立逻辑画笔CreatePenIndirect用LOGPEN结构建立画笔CreatePipe建立匿名管道CreatePolyPolygonRgn建立由多边形组成的区域CreatePolygonRgn建立多边形区域CreatePopupMenu建立弹出式菜单CreatePrivateObjectSecurity分配并初始化保护SDCreateProcess建立新的进程和线索对象CreateProcessAsUser建立指定用户的新进程CreateRectRgn建立矩形区域CreateRectRgnIndirect用RECT结构建立一个区域CreateRemoteThread在另一进程中建立线索CreateRoundRectRgn建立圆角矩形CreateScalableFontResource建立带字体信息的资源文件CreateSemaphore将句柄返回给新的信号量CreateService建立服务对象CreateSolidBrush用指定颜色建立实心刷子CreateTapePartition建立新的磁带分区CreateThread建立新的线程CreateWindowEx建立窗口DPtoLP将设备坐标转换位逻辑坐标DdeAbandonTransaction取消异步交互DdeAccessData访问DDE数据对象DdeAddData向DDE数据对象中加入数据DdeClientTransaction开始DDE数据事务DdeCmpStringHandles比较两个DDE字符串句柄DdeConnect建立与服务器的对话DdeConnectList建立多个DDE对话DdeCreateDataHandle建立DDE数据句柄DdeCreateStringHandle建立DDE字符串句柄DdeDisconnect终止DDE对话DdeDisconnectList取消DDE对话表列DdeEnableCallback使能或取消一个或多个DDE对话DdeFreeDataHandle释放DDE数据对象DdeFreeStringHandle释放DDE字符串句柄DdeGetData将数据从DDE数据对象中复制到缓冲区DdeGetLastError返回由DDEML函数设置的出错代码DdeImpersonateClient DDE服务器模拟客户机DdeInitialize用DDEML登记应用程序DdeKeepStringHandle为字符串句柄增加可用记录DdeNameService登记取消服务器名称DdePostAdvise提示服务器向客户机发送建议数据DdeQueryConvInfo返回关于DDE对话的信息DdeQueryNextServer在对话表列中获得下一个句柄DdeQueryString将字符串句柄文本复制到缓冲区DdeReconnect重建DDE对话DdeSetQualityOfService指明服务的DDE质量DdeSetUserHandle将用户定义句柄与事务建立关联DdeUnaccessData释放DDE数据对象DdeUninitialize释放应用程序的DDEML资源DebugActiveProcess连接调试进程DebugBreak建立断点DefDlgProc提供缺省窗口消息进程DefDriverProc定义缺省消息处理器DefFrameProc缺省MDI框架窗口消息进程DefMDIChildProc缺省MDI子窗口消息进程DefWindowProc调用缺省窗口过程DeferWindowPos更新窗口位置结构DefineDosDevice定义、重定义或删除DOS的设备名DeleteAce从已存在的ACL中删除ACE DeleteAtom删除一个原子DeleteColorSpace删除指定色彩空间DeleteCriticalSection删除临界部分DeleteDC删除设备描述表DeleteEnhMetaFile取消增强图元文件句柄DeleteFile删除文件DeleteForm删除打印机窗体层差DeleteMenu删除菜单项DeleteMetaFile取消WINDOWS图元文件句柄DeleteMonitor删除打印机监视器DeleteObject从内存删除一个对象DeletePort删除打印机端口DeletePrintProcessor删除打印机处理器DeletePrintProvidor删除打印机提供者DeletePrinter删除打印机服务器上的打印机DeletePrinterConnection删除与打印机的连接DeletePrinterDriver删除打印机驱动程序DeleteService从SC MANAGER数据库中删除服务DeregisterEventSource光闭事件句柄DescribePixelFormatDestroyAcceleratorTable取消加速表DestroyCaret取消当前脱字号DestroyCursor取消CREATECURSOR建立的光标DestroyIcon取消由CREATEICON建立的图标DestroyMenu取消菜单并释放内存DestroyPrivateObjectSecurity删除被保护的服务器对象的SD DestroyWindow取消窗口DeviceCapabilities返回设备驱动程序的功能DeviceIoControl直接调用驱动程序DialogBoxIndirectParam从内存模块中建立对话框DisableThreadLibraryCallsDisconnectNamedPipe切断命名管道的服务器终端DispatchMessage向窗口发送消息DlgDirList填充目录列表框DlgDirListComboBox填充目录列表框DlgDirSelectComboBoxEx从目录列表框中返回用户选择DlgDirSelectEx从目录列表框中返回用户选择DoEnvironmentSubstDocumentProperties配置打印机设置DosDateTimeToFileTime将MS-DOS日期时间转换为64位格式DragAcceptFiles登记窗口是否接受托动文件的内容DragDetectDragFinish释放分配用于托动文件的内容DragObjectDragQueryFile返回托动的文件名DragQueryPoint返回鼠标位置DrawAnimatedRectsDrawCaptionDrawEdgeDrawEscape实现非GDI可画图设备方法DrawFocusRect用焦点风格画矩形DrawFrameControlDrawIcon在指定设备描述表中画一个图标DrawIconExDrawMenuBar重显示菜单栏DrawStateDrawText在矩形中画出已格式化文本DrawTextExDrvGetModuleHandle获得可安装驱动程序的例子句柄DuplicateHandle复制对象句柄DuplicateIconDuplicateToken复制访问令牌Ellipse画椭圆EmptyClipboard清空剪贴板并释放数据句柄EnableMenuItem使能、取消或使菜单项不可激活EnableScrollBar使能、取消滚动条EnableWindow设备窗口使能状态EndDeferWindowPos更新窗口的位置及大小EndDialog隐藏对话框EndDoc结束打印作业EndDocPrinter结束打印作业EndPage结束一页EndPagePrinter结束打印页EndPaint在指定窗口中标记图画结尾标志EndPath结束路径EndUpdateResource在可执行文件中结束资源更新EnterCriticalSection加入临界部分EnumCalendarInfoEnumChildWindows将子窗口句柄传给回调函数EnumClipboardFormats返回CLIPBOARD格式EnumDateFormats枚举局部指定数据格式EnumDependentServices枚举依赖于设备的服务EnumDesktopWindowsEnumDesktopsEnumEnhMetaFile用增强图元文件返回GDI调用EnumFontFamilies返回指定家族的字体EnumFontFamiliesEx返回指定家族的字体EnumFonts枚举指定设备上的字体EnumForms枚举所支持的打印机窗体EnumICMProfiles枚举可用的颜色分布EnumJobs获取打印作业信息EnumMetaFile用WINDOWS图元文件返回GDI调用EnumMonitors枚举可用监视器EnumObjects枚举设备描述表中的画笔和刷子EnumPorts枚举可用打印机端口EnumPrintProcessorDatatypes枚举打印机所支持的数据类型EnumPrintProcessors枚举已安装的打印机处理器EnumPrinterDrivers枚举已安装的打印机驱动程序EnumPrinterPropertySheetsEnumPrintersEnumProps返回窗口属性表列EnumPropsEx返回窗口属性表列EnumResourceLanguages列出语言资源EnumResourceNames列出资源名称EnumResourceTypes列出资源类型EnumServicesStatus枚举SC管理器数据库中的服务EnumSystemCodePages枚举已安装的可用系统代码页EnumSystemLocales枚举已安装的系统局部EnumThreadWindows返回线索窗口EnumTimeFormats枚举本地指定时间格式EnumWindowStationsEqualPrefixSid检查两个SLD前缀是否相等EqualRect确定两矩形是否相等待EqualRgn比较两区域是否相等EqualSid检查两SLD安全ID是否相等EraseTape删除磁带的指定段Escape允许访问设备EscapeCommFunction发送扩展COMM函数ExcludeClipRect改变剪裁区ExcludeUpdateRgn从剪裁区中排斥更新区域ExitProcess退出当前进程ExitThread退出当前线索ExitWindows关闭WINDOWSExitWindowsEx关闭WINDOWS ExpandEnvironmentStrings扩充环境变量字符串ExtCreatePen建立逻辑画笔ExtCreateRegion从区域数据中建立一个区域ExtEscape允许访问私有设备ExtFloodFill用当前刷子填充区域ExtSelectClipRgn选择一块区域作为剪裁区ExtTextOut在矩形区域中输出一个字符串ExtractAssociatedIcon从文件或相关EXE中获取图标句柄ExtractIcon从可执行文件中返回图标句柄(即返回HIC ExtractIconExFatalAppExit结束一个应用程序FatalExit向调试者返回控件FileTimeToDosDateTime将文件时间转换为MS-DOS日期FileTimeToLocalFileTime将UTC文件时间转换成本地文件时间FileTimeToSystemTime将64位时间转换为系统时间FillConsoleOutputAttribute将属性写入屏幕缓冲区FillConsoleOutputCharacter将字符写入屏幕缓冲区FillPath填充当前路径FillRect用指定刷子填充矩形区域FillRgn用刷子填充区域FindAtom从本地原子表中返回字符串原子FindClose关闭查找文件描述表FindCloseChangeNotification光闭文件或目录修改等待FindClosePrinterChangeNotificationFindEnvironmentStringFindExecutable返回可执行文件名及句柄FindFirstChangeNotification设置文件或目录修改等待FindFirstFile查找第一个匹配文件FindFirstFreeAce返回指向第一个空闲ACL字节的指针FindFirstPrinterChangeNotificationFindNextChangeNotification请求对下一个文件或目录变化的通知FindNextFile查找下一个匹配文件FindNextPrinterChangeNotificationFindResource在模块中寻找资源FindResourceEx在模块中寻找资源FindText建立查找文本对话框FindWindow返回一个与类和窗口名相关的窗口句柄FindWindowExFixBrushOrgExFlashWindow使窗口闪烁一次FlattenPath将弧变为线FloodFill用当前刷子填充区域FlushConsoleInputBuffer清除控制台输入缓冲区FlushFileBuffers清除文件缓冲区FlushInstructionCache填满指令缓冲区FlushViewOfFile用映像视图填充文件FoldString变换字符串FormatMessage格式化消息字符串FrameRect用指定刷子画一个窗口边框FrameRgn在区域四周画出边框FreeConsole释放控制台FreeDDElParam释放DDE消息IPARAM FreeEnvironmentStringsFreeLibrary卸载库模块FreeLibraryAndExitThreadFreeResourceFreeSid释放SIDGdiComment向增强型图元文件中加入注释GdiFlush使当前GDI闪烁GdiGetBatchLimit返回缓冲GDI函数数量GdiSetBatchLimit设置缓冲GDI函数数量GenerateConsoleCtrlEvent向控制台进程组发送信号GetACP获取ANSI系统代码页GetAce返回指向ACL中的ACE的指针GetAclInformation返回访问控件表信息GetActiveWindow返回活动窗口句柄GetArcDirection返回弧和矩形的绘画方向GetAspectRatioFilterEx返回当前ASPECT-RATIO过滤器GetAsyncKeyState确定键的状态GetAtomName返回本地原子字符串GetBinaryType确定二进制可执行文件类型GetBitmapBits将位图复制到缓冲区GetBitmapDimensionEx返回位图宽和高GetBkColor返回当前背景色GetBkMode返回背景模式GetBoundsRect返回当前相邻矩形GetBrushOrgExGetCPInfo获取代码页信息GetCaptureGetCaretBlinkTime返回脱字号闪烁时间GetCaretPos返回当前脱字号位置GetCharABCWidths返回字符宽度GetCharABCWidthsFloat返回字符宽度GetCharWidth返回字符宽度GetCharWidth32返回字符宽度GetCharWidthFloat返回部分字符宽度GetCharacterPlacement获取字符串属性数据GetClassInfo返回窗口类信息GetClassLong返回窗口类数据GetClassName返回窗口类名称GetClassWord返回窗口类内存字GetClientRect 返回窗口客户区坐标(返回窗口相对桌面坐GetClipBox取剪裁区域框GetClipCursor返回限制光标的矩形的坐标GetClipRgn返回当前剪辑域GetClipboardData返回剪贴板数据的句柄GetClipboardFormatName返回登录的剪贴板格式名GetClipboardOwner返回剪贴板所有者窗口句柄GetClipboardViewer返回第一个剪贴板浏览窗口句柄GetColorAdjustment获取设备描述表调整值GetColorSpace获取指定色彩空间GetCommConfigGetCommMask返回COMM事件屏蔽GetCommModemStatus返回调制解调器控制登录值GetCommProperties返回COMM设备属性GetCommState返回COMM设备控制块GetCommTimeouts返回COMM设备超时特性值GetCommandLine返回指向命令行的指针GetCompressedFileSizeGetComputerName取回当前计算机名GetConsoleCP为控制台输入获取代码页GetConsoleCursorInfo返回光标大小GetConsoleMode返回控制台输入输出模式GetConsoleOutputCP为控制台输出获取代码页GetConsoleScreenBufferInfo返回屏幕缓冲区信息GetConsoleTitle返回控制台窗口标题GetCurrencyFormatGetCurrentDirectory返回当前目录GetCurrentObject返回当前对象GetCurrentPositionEx返回逻辑单元位置GetCurrentProcess返回当前进程的句柄GetCurrentProcessId返回当前进程ID值GetCurrentThread返回当前线索的句柄GetCurrentThreadId返回当前线索ID值GetCursor返回当前光标的句柄GetCursorPos返回当前光标的位置(用来更换鼠标位置)GetDC返回窗口描述表句柄GetDCEx返回显示描述表的句柄GetDCOrgEx返回设备描述表的转换起点GetDIBColorTableGetDIBits将DIB位复制到缓冲区中GetDateFormat获取本地日期格式GetDefaultCommConfigGetDesktopWindow返回桌面窗口句柄GetDeviceCaps返回设备性能GetDeviceGammaRamp获取显示器的辉度系数GetDialogBaseUnits返回对话基础单元GetDiskFreeSpace返回空闲磁盘空间GetDlgCtrlID返回儿子窗口的ID值GetDlgItem返回对话框控件句柄( ) GetDlgItemInt将对话框文本转换为整数GetDlgItemText返回对话框控件文本GetDoubleClickTime返回鼠标双击时间GetDriveType返回指定驱动器类型GetDriverModuleHandle返回驱动程序模块例子句柄GetEnhMetaFile建立增强图元文件GetEnhMetaFileBits将增强图元文件值复制到缓冲区GetEnhMetaFileDescription返回增强图元文件的标题及建立者GetEnhMetaFileHeader返回增强图元文件头GetEnhMetaFilePaletteEntries返回增强图元文件调色板入口GetEnvironmentStrings返回指向环境块的指针GetEnvironmentVariable返回过程环境变量GetExitCodeProcess返回过程中断代码GetExitCodeThread返回线索中断代码GetExpandedName取压缩文件的原文件名GetFileAttributes返回文件属性GetFileInformationByHandle返回文件信息GetFileSecurity获取文件或目录安全信息GetFileSize返回指定文件大小GetFileTime返回文件64位时间GetFileTitle返回文件名GetFileType返回文件类型GetFileVersionInfo返回文件的版本信息GetFileVersionInfoSize返回可用版本信息大小GetFocus返回当前焦点窗口句柄( ) GetFontData返回字体数据GetFontLanguageInfo获取字体显示描述表的信息GetForegroundWindow返回前景窗口句柄GetForm获取打印机窗口信息GetFullPathName返回文件的路径名GetGlyphOutline取回轮廓数据GetGraphicsMode取回指定DC的图形模式GetHandleInformationGetICMProfile返回设备场景的色彩映像GetIconInfo返回图标或光标信息GetInputState确定鼠标、键盘、定时器状态GetJob获取打印作业信息GetKBCodePage获取OEM系统代码页GetKernelObjectSecurity返回内核对象SDGetKerningPairs返回当前字体内核对GetKeyNameText返回代表键盘名字的字符串GetKeyState返回虚拟键的状态GetKeyboardLayoutGetKeyboardLayoutListGetKeyboardLayoutName返回活动键盘版面名GetKeyboardState返回虚拟键盘状态GetKeyboardType返回键盘信息GetLargestConsoleWindowSize返回窗口尺寸的最大可能性GetLastActivePopup确定最近的活动弹出式窗口GetLastError返回扩充出错代码GetLengthSid返回SID长度GetLocalTime返回本地时间和日期GetLocaleInfo从记录中获取本机信息GetLogColorSpace获取逻辑色彩空间的信息GetLogicalDriveStrings返回合法驱动器字符串GetLogicalDrives指定合法驱动器GetMailslotInfo返回信箱信息GetMapMode返回映像模式GetMenu返回指定窗口的菜单句柄GetMenuCheckMarkDimensions返回缺省复选标记位图尺寸GetMenuContextHelpIdGetMenuDefaultItemGetMenuItemCount返回菜单项数GetMenuItemID返回菜单项标识符GetMenuItemInfoGetMenuItemRectGetMenuState返回指定菜单项的菜单标记GetMenuString将菜单项字符串复制入缓冲区GetMessage从线索消息队列中返回一条消息GetMessageExtraInfo返回硬件消息的信息GetMessagePos返回最后消息的光标位置GetMessageTime返回最后消息的时间位置GetMetaFile建立WINDOWS图元文件GetMetaFileBitsEx将WINDOWS图元文件复制入缓冲区GetMetaRgn返回当前图元区域GetMiterLimit返回当前MITER-JOIN长度GetModuleFileName返回指定模块的路径GetModuleHandle返回指定模块的句柄GetNamedPipeHandleState返回命名管道句柄消息GetNamedPipeInfo返回命名管道句柄消息GetNearestColor返回最近的可用色彩GetNearestPaletteIndex返回最近的匹配色彩GetNextDlgGroupItem返回前或后一组控件的句柄GetNextDlgTabItem返回前或后一个WS_TABSTOP控件GetNextWindow返回前或后一窗口管理器窗口GetNumberFormatGetNumberOfConsoleInputEvents返回控制台队列事件数GetNumberOfConsoleMouseButtons返回鼠标按钮数GetNumberOfEventLogRecords获取事件记录中的记录数GetOEMCP获取OEM系统代码页GetObject返回对象信息GetObjectType返回对象类型GetOldestEventLogRecord返回最早的记录数GetOpenClipboardWindow返回打开CLIPBOARD的窗口句柄GetOpenFileName建立文件名对话框GetOutlineTextMetrics返回TRUETYPE字体的公制类型GetOverlappedResult返回最后重叠结果GetPaletteEntries返回调色板入口范围GetParent返回父口句柄GetPath返回路径中的所有直线和曲线GetPixel返回指定像素的RGB值GetPixelFormatGetPolyFillMode返回当前多边形填充模式GetPrintProcessorDirectory获取打印机驱动处理器路径GetPrinter获取打印机信息GetPrinterData获取打印机配置信息GetPrinterDriver获取打印机驱动程序信息GetPrinterDriverDirectory获取打印机驱动程序路径GetPriorityClass返回过程的优先级类GetPriorityClipboardFormat返回第一个CLIPBOARD格式GetPrivateObjectSecurity返回保护服务器对象SD GetPrivateProfileInt从私有文件中获取整数GetPrivateProfileSection返回私有键和值GetPrivateProfileString从私有文件中获取字符串GetProcAddress返回函数地址GetProcessAffinityMask获取任务可用的处理表列GetProcessHeap获取调用过程堆句柄GetProcessHeapsGetProcessShutdownParameters返回过程停止参数GetProcessTimes获取过程计时器GetProcessWindowStation返回过程窗口站句柄GetProcessWorkingSetSizeGetProfileInt从WIN.INI中获取整数GetProfileSection从WIN.INI中返回关键字和值GetProfileString从WIN.INI中获取字符串GetProp从窗口属性表列中返回数据句柄GetQueueStatus确定消息队列内容GetQueuedCompletionStatusGetROP2返回当前绘图模式GetRasterizerCaps返回系统TRUETYPE状态GetRegionData返回区域数据GetRgnBox返回区域边框矩形GetSaveFileName建立文件名保存对话框GetScrollInfoGetScrollPos返回滑块位置GetScrollRange返回滑块运动范围GetSecurityDescriptorControl取回SD校正及控制信息GetSecurityDescriptorDacl返回SD离散ACL GetSecurityDescriptorGroup返回SD个人组信息GetSecurityDescriptorLength返回SD长度GetSecurityDescriptorOwner返回SD所有人GetSecurityDescriptorSacl返回SD系统ACL GetServiceDisplayName获取服务显示名称GetServiceKeyName获取服务登录关键名称GetShortPathName返回文件短路径GetSidIdentifierAuthority返回ID字段地址GetSidLengthRequired返回所需SID长度GetSidSubAuthority返回次规范数组地址GetSidSubAuthorityCount返回次字段地址GetStartupInfo获取当前过程的启始信息GetStdHandle返回标准I/O句柄GetStockObject返回常用画笔、刷子或字段的句柄GetStretchBltMode返回位图拉伸模式GetStringTypeA获取ANSI字符串类型GetStringTypeExGetStringTypeW获取UNICODE字符串类型GetSubMenu返回弹出式菜单句柄GetSysColor返回显示元素色彩GetSysColorBrushGetSystemDefaultLCID获取系统缺省本地ID GetSystemDefaultLangID获取系统缺省语言ID GetSystemDirectory返回WINDOWS系统目录路径GetSystemInfo返回系统信息GetSystemMenu访问系统菜单GetSystemMetrics返回系统公制GetSystemPaletteEntries返回系统调色板入口GetSystemPaletteUse确定使用整个系统调色板GetSystemPowerStatus获取系统AC或DC电源状态GetSystemTime返回系统时间和日期GetSystemTimeAdjustmentGetTabbedTextExtent确定制表串大小GetTapeParameters返回磁带驱动器或介质信息GetTapePosition返回当前磁带位置GetTapeStatus返回磁带机状态GetTempFileName建立临时文件名GetTempPath返回临时文件路径GetTextAlign返回文本对齐标志GetTextCharacterExtra返回文本字符间隔GetTextCharsetGetTextCharsetInfo返回当前字体设置信息GetTextColor返回当前文本色彩GetTextExtentExPoint返回子字符串长度数组GetTextExtentPoint返回字符串大小GetTextExtentPoint32返回字符串大小GetTextFace返回当前字体的字样GetTextMetrics返回当前字体的公制GetThreadContext返回指定线索描述表GetThreadDesktop返回线索桌面句柄GetThreadLocale获取线索本地信息GetThreadPriority返回指定线索优先级GetThreadSelectorEntry返回线索描述入口GetThreadTimes返回线索计时信息GetTickCount返回WINDOWS运行时间GetTimeFormat获取本地指定的时间字符串GetTimeZoneInformation返回当前时区信息GetTokenInformation返回指定令牌信息GetTopWindow返回指定窗口的顶端儿子句柄GetUpdateRect返回窗口更新区域大小GetUpdateRgn返回窗口更新区域大小GetUserDefaultLCID获取用户缺省本地ID GetUserDefaultLangID获取用户缺省语言IDGetUserName返回用户名GetUserObjectInformationGetUserObjectSecurity返回服务器对象SD信息GetVersion返回WINDOWS和操作系统版本GetVersionEx返回扩展操作系统版本信息GetViewportExtEx返回视窗宽度GetViewportOrgEx返回视口源GetVolumeInformation返回文件系统信息GetWinMetaFileBits返回WINDOWS格式的图元文件内容GetWindow返回指定窗口句柄GetWindowContextHelpIdGetWindowDC返回窗口设备厂描述表GetWindowExtEx返回窗口宽度GetWindowLong从附加窗口内存中返回长型数值GetWindowOrgEx返回窗口源GetWindowPlacement返回窗口显示状态及最小/最大位置GetWindowRect返回窗口坐标GetWindowRgnGetWindowText将窗口工具栏文本复制到缓冲区GetWindowTextLength返回窗口工具栏文本长度GetWindowThreadProcessId返回窗口线索及过程ID GetWindowWord从附加窗口内存中返回字值GetWindowsDirectory返回窗口WINDOWS目录GetWorldTransform返回当前变换式GlobalAddAtom在系统原子表中加入字符串GlobalAlloc在堆中分配内存GlobalCompactGlobalDeleteAtom从系统原子表中删除原子GlobalFindAtom从全局原子表中返回字符串原子GlobalFixGlobalFlags返回全局内存块信息GlobalFree释放全局内存块GlobalGetAtomName返回全局原子字符串GlobalHandle将全局指针转换为句柄GlobalLock锁定内存对象并返回一个指针GlobalMemoryStatus检查内存状态GlobalReAlloc修改全局内存块大小/属性GlobalSize返回全局内存块大小GlobalUnWireGlobalUnfixGlobalUnlock开锁全局内存块GlobalWireGrayString在指定位置画灰色文本HeapAlloc从堆中分配内存HeapCompact压缩内存堆HeapCreate建立堆HeapDestroy取消堆HeapFree释放从堆中分配的内存HeapLock锁定堆HeapReAlloc从堆中重分配内存HeapSize返回堆对象的大小HeapUnlock释放堆锁HeapValidate校验指定堆结构HideCaret隐藏脱字号HiliteMenuItem修改顶级菜单项高亮度hreadhwriteImmAssociateContextImmConfigureIMEImmCreateContextImmDestroyContextImmEnumRegisterWordImmEscapeImmGetCandidateListImmGetCandidateListCountImmGetCandidateWindowImmGetCompositionFontImmGetCompositionStringImmGetCompositionWindowImmGetContextImmGetConversionListImmGetConversionStatusImmGetDefaultIMEWndImmGetDescriptionImmGetGuideLineImmGetIMEFileNameImmGetOpenStatusImmGetPropertyImmGetRegisterWordStyleImmGetStatusWindowPosImmGetVirtualKeyImmInstallIMEImmIsIMEImmIsUIMessageImmNotifyIMEImmRegisterWordImmReleaseContextImmSetCandidateWindowImmSetCompositionFontImmSetCompositionStringImmSetCompositionWindowImmSetConversionStatusImmSetOpenStatusImmSetStatusWindowPosImmSimulateHotKeyImmUnregisterWordImpersonateDdeClientWindow模拟DDE客户窗口ImpersonateLoggedOnUser模拟指定用户ImpersonateNamedPipeClient管道服务器模拟客户ImpersonateSelf获取调用过程的模拟令牌InSendMessage确定窗口是否在进行SENDMESSAGE InflateRect改变矩形大小InitAtomTable初始化本地原子杂凑表InitializeAcl建立新的访问控件表InitializeCriticalSection初始化临界段对象InitializeSecurityDescriptor初始化安全描述InitializeSid初始化SID InitiateSystemShutdown关闭系统InsertMenu加入新菜单项InsertMenuItemInterlockedDecrement减少LONG InterlockedExchange自动交换32位数值InterlockedIncrement增加LONG IntersectClipRect建立剪辑区域IntersectRect计算两矩形交叠处InvalidateRect在更新区域中加入一个矩形InvalidateRgn在更新区域加入一个区域InvertRect翻转矩形区域InvertRgn翻转区域颜色IsBadCodePtr确定读指针的合法性IsBadHugeReadPtr确定读指针的合法性IsBadHugeWritePtr确定进程是否有写动作IsBadReadPtr确定进程是否有读动作IsBadStringPtr确定字符串指针的合法性IsBadWritePtr确定写指针的合法性IsCharAlpha确定字符串是否是字母IsCharAlphaNumeric确定字符串是否是数字IsCharLower确定字符串是否是小写IsCharUpper确定字符串是否是大写IsChild确定窗口是否是儿子窗IsClipboardFormatAvailable确定格式是否可用IsDBCSLeadByte确定字符是否DBCS引导字节IsDialogMessage确定消息是否用于对话框IsDlgButtonChecked确定按钮控件状态IsIconic确定窗口是否被最小画IsMenu确定句柄是否是菜单IsRectEmpty确定矩形是否为空IsTextUnicodeIsValidAcl使访问控件表有效IsValidCodePage确定代码页是否有效IsValidLocale确定本地代码是否有效IsValidSecurityDescriptor使安全描述有效IsValidSid使SID有效IsWindow确定窗口句柄是否有效IsWindowEnabled确定窗口是否接收用户输入IsWindowUnicode确定窗口是否使用UNICODE IsWindowVisible确定窗口是否可见IsZoomed确定窗口是否最大化joyGetDevCaps确定操纵杆是否可用joyGetNumDevs返回操纵杆数目joyGetPos返回操纵杆位置及按钮活动joyGetPosEx返回操纵杆位置扩展信息joyGetThreshold返回操纵杆运动临界值joyReleaseCapture释放操纵杆捕获joySetCapture对指定窗口捕获操纵杆消息joySetThreshold设置操纵杆运动临界值keybd_event综合击键事件KillTimer中止定时器lcloselcreatLCMapString映像字符串LPtoDP将逻辑指针变为设备指针LZClose关闭文件LZCopy复制文件或压缩LZDoneLZInit初始化压缩数据结构LZOpenFile打开文件LZRead从压缩文件中读入数据LZSeek重定位文件中的指针LZStartLeaveCriticalSection保留前一个输入临界段LineDDA计算线中的连续点LineTo从当前位置画一条线llseekLoadAccelerators装入加速表LoadBitmap装入位图资源LoadCursor装入光标资源LoadCursorFromFileLoadIcon装入图标资源LoadImageLoadKeyboardLayout键盘布置装入内存LoadLibrary映像模块到进行地址空间LoadLibraryEx返回库模块句柄LoadMenu装入菜单资源LoadMenuIndirect获取菜单模板句柄LoadModule装入并运行程序LoadResource返回资源句柄LoadString装入字符串资源LocalAlloc从堆分配内存LocalCompactLocalFileTimeToFileTime将本地文件时间转移为UTC文件时间LocalFlags返回本地内存块信息LocalFree释放本地内存信息LocalHandle返回本地指针句柄LocalLock锁定本地内存对象并返回指针LocalReAlloc修改本地内存大小及属性LocalShrinkLocalSize返回本地内存块大小LocalUnlock开锁本地内存块LockFile锁定一个字节范围LockFileEx锁定一个字节范围LockResource返回资源地址LockServiceDatabase锁定指定SC管理器数据库LockWindowUpdate禁止或使能在窗口中的绘画LogonUser登录用户LookupAccountName把帐户名转为SID LookupAccountSid把SID转为帐户名LookupIconIdFromDirectory返回图标或光标ID坐标LookupIconIdFromDirectoryExLookupPrivilegeDisplayName返回可见特权名LookupPrivilegeName返回可编程特权名LookupPrivilegeValue返回特权名LUIDlopenlreadlstrcatlstrcmp比较两个字符串lstrcmpi比较两个字符串lstrcpylstrcpynlstrlen返回字符串中字符数lwriteMakeAbsoluteSD建立独立SD MakeSelfRelativeSD建立自相关SDMapDialogRect将对话框映像至像素MapGenericMask映像对专用/标准的一般性访问MapViewOfFile将视图映像入地址空间MapViewOfFileEx将视图映像入地址空间MapVirtualKey转换虚拟关键字代码或扫描代码MapVirtualKeyExMapWindowPoints将点转换到另一坐标系统MaskBlt转换位图mciExecute执行MCI设备命令mciGetCreatorTask返回创建任务mciGetDeviceID返回设备名对应的ID mciGetDeviceIDFromElementID用元素引用返回设备ID mciGetErrorString返回MCI出错代码的文本描述mciGetYieldProc获取过程地址mciSendCommand向MCI设备发出一条命令消息mciSendString向MCI设备发出一条命令字符串mciSetYieldProc设置过程地址MenuItemFromPointMessageBeep产生声音MessageBox建立消息框窗体MessageBoxEx建立消息框窗体MessageBoxIndirectmidiConnect连接MIDI设备midiDisconnect断开MIDI设备midiInAddBuffer向MIDI设备发送输入缓冲midiInClose关闭MIDI输入设备midiInGetDevCaps确定MIDI设备性能midiInGetErrorText返回MIDI出错代码的文本描述midiInGetID返回MIDI设备句柄ID midiInGetNumDevs返回MIDI设备数量midiInMessage向MIDI设备驱动程序发送消息midiInOpen打开MIDI设备midiInPrepareHeader准备MIDI输入缓冲区midiInReset结束MIDI输入和标准输入缓冲区midiInStart开始MIDI输入设备midiInStop结束MIDI输入midiInUnprepareHeader清除预备头midiOutCacheDrumPatches预装入MIDI碰撞修正码midiOutCachePatches预装入MIDI修正码midiOutClose关闭MIDI输出设备midiOutGetDevCaps返回MIDI输出设备性能midiOutGetErrorText返回MIDI输出出错文本midiOutGetID返回MIDI输出设备ID midiOutGetNumDevs获取MIDI输出设备数量midiOutGetVolume返回MIDI输出设备卷midiOutLongMsg发送系统专用MIDI消息midiOutMessage向MIDI设备驱动程序发送消息。
WindowsAPI函数大全(Windows编程参考手册)
WindowsAPI函数大全(Windows编程参考手册)1、基础服务(Base Services):提供对Windows系统可用的基础资源的访问接口。
比如象:文件系统(file system)、外部设备(device)、,进程(process)、线程(thread)以及访问注册表(Windows registry)和错误处理机制(error handling)。
这些功能接口位于,16位Windows下的kernel.exe、krnl286.exe或krnl386.exe系统文档中;以及32位Windows下的kernel32.dll和advapi32.dll中。
2、图形设备接口(GDI):提供功能为:输出图形内容到显示器、打印机以及其他外部输出设备。
它位于16位Windows下的gdi.exe;以及32位Windows下的gdi32.dll。
3、图形化用户界面(GUI):提供的功能有创建和管理屏幕和大多数基本控件(control),比如按钮和滚动条。
接收鼠标和键盘输入,以及其他与GUI有关的功能。
这些调用接口位于:16位Windows下的user.exe,以及32位Windows下的user32.dll。
从Windows XP 版本之后,基本控件和通用对话框控件(Common Control Library)的调用接口放在comctl32.dll中。
4、通用对话框链接库(Common Dialog Box Library):为应用程序提供标准对话框,比如打开/保存文档对话框、颜色对话框和字体对话框等等。
这个链接库位于:16位Windows下的commdlg.dll 中,以及32位Windows下comdlg32.dll中。
它被归类为User Interface API之下。
5、通用控件链接库(Common Control Library):为应用程序提供接口来访问操作系统提供的一些高级控件。
比如像:状态栏(status bar)、进度条(progress bars)、工具栏(toolbar)和标签(tab)。
WindowsAPI函数大全完整
1. API之网络函数?WNetAddConnection 创建同一个网络资源的永久性连接?WNetAddConnection2 创建同一个网络资源的连接?WNetAddConnection3 创建同一个网络资源的连接?WNetCancelConnection 结束一个网络连接?WNetCancelConnection2 结束一个网络连接?WNetCloseEnum 结束一次枚举操作?WNetConnectionDialog 启动一个标准对话框,以便建立同网络资源的连接? WNetDisconnectDialog 启动一个标准对话框,以便断开同网络资源的连接? WNetEnumResource 枚举网络资源?WNetGetConnection 获取本地或已连接的一个资源的网络名称?WNetGetLastError 获取网络错误的扩展错误信息?WNetGetUniversalName 获取网络中一个文件的远程名称以及/或者UNC(统一命名规范)名称?WNetGetUser 获取一个网络资源用以连接的名字?WNetOpenEnum 启动对网络资源进行枚举的过程?2. API之消息函数?BroadcastSystemMessage 将一条系统消息广播给系统中所有的顶级窗口? GetMessagePos 取得消息队列中上一条消息处理完毕时的鼠标指针屏幕位置? GetMessageTime 取得消息队列中上一条消息处理完毕时的时间?PostMessage 将一条消息投递到指定窗口的消息队列?PostThreadMessage 将一条消息投递给应用程序?RegisterWindowMessage 获取分配给一个字串标识符的消息编号?ReplyMessage 答复一个消息?SendMessage 调用一个窗口的窗口函数,将一条消息发给那个窗口? SendMessageCallback 将一条消息发给窗口?SendMessageTimeout 向窗口发送一条消息?SendNotifyMessage 向窗口发送一条消息?3. API之文件处理函数?CloseHandle 关闭一个内核对象。
WindowsAPI函数中文版详细介绍
DestroyMenu删除指定的菜单DrawMenuBar为指定的窗口重画菜单EnableMenuItem允许或禁止指定的菜单条目GetMenu取得窗口中一个菜单的句柄GetMenuCheckMarkDimensions 返回一个菜单复选符的大小GetMenuContextHelpId 取得一个菜单的帮助场景IDGetMenuDefaultItem 判断菜单中的哪个条目是默认条目GetMenuItemCount 返回菜单中条目(菜单项)的数量GetMenuItemID 返回位于菜单中指定位置处的条目的菜单IDGetMenuItemInfo 取得(接收)与一个菜单条目有关的特定信息GetMenuItemRect在一个矩形中装载指定菜单条目的屏幕坐标信息GetMenuState取得与指定菜单条目状态有关的信息GetMenuString取得指定菜单条目的字串GetSubMenu取得一个弹出式菜单的句柄,它位于菜单中指定的位置GetSystemMenu取得指定窗口的系统菜单的句柄HiliteMenuItem控制顶级菜单条目的加亮显示状态InsertMenu在菜单的指定位置处插入一个菜单条目,并根据需要将其他条目向下移动InsertMenuItem插入一个新菜单条目IsMenu判断指定的句柄是否为一个菜单的句柄LoadMenu从指定的模块或应用程序实例中载入一个菜单LoadMenuIndirect 载入一个菜单MenuItemFromPoint 判断哪个菜单条目包含了屏幕上一个指定的点ModifyMenu改变菜单条目RemoveMenu删除指定的菜单条目SetMenu设置窗口菜单SetMenuContextHelpId 设置一个菜单的帮助场景IDSetMenuDefaultItem 将一个菜单条目设为默认条目SetMenuItemBitmaps 设置一幅特定位图,令其在指定的菜单条目中使用,代替标准的复选符号(√)SetMenuItemInfo 为一个菜单条目设置指定的信息TrackPopupMenu在屏幕的任意地方显示一个弹出式菜单TrackPopupMenuEx与TrackPopupMenu相似,只是它提供了额外的功能7. API之位图、图标和光栅运算函数BitBlt 将一幅位图从一个设备场景复制到另一个CopyIcon 制作指定图标或鼠标指针的一个副本。
windowsAPI函数中文详解
windowsAPI函数中⽂详解WindowsAPI函数中⽂详解V1.0⽬录WindowsAPI函数中⽂详解V1.0 ----------------------------------------------------------------------------- 1 VC API常⽤函数简单例⼦⼤全 ---------------------------------------------------------------------------- 6第⼀个:FindWindow根据窗⼝类名或窗⼝标题名来获得窗⼝的句柄,该函数返回窗⼝的句柄------------------------------------------- 6第⼆个:SendMessage根据窗⼝句柄发送⼀个消息给窗⼝6第三个:GetCursorPos获取⿏标当前位置(屏幕) -------- 8第四个:WindowFromPoint根据坐标点获得对应的窗⼝句柄 -------------------------------------------------------------------------------- 9第五个MoveWindow根据窗⼝句柄移动窗⼝,改变窗⼝⼤⼩ ------------------------------------------------------------------------------- 10第六个ShowWindow设置窗⼝显⽰状态,如隐藏,最⼤化,最⼩化------------------------------------------------------------------------- 10第七个SetCursorPos设置⿏标的位置、把⿏标移动到指定的位置------------------------------------------------------------------------- 11第⼋个CopyFile复制⼀个⽂件-------------------------------------- 11第九个DeleteFile删除⼀个⽂件----------------------------------- 11第⼗个CreateDirectory创建⼀个⽂件夹(⽬录) --------- 11第⼗⼀个:GetClientRect获得窗⼝⼤⼩---------------------- 12第⼗⼆个:GetCWindowRect获得窗⼝⼤⼩(相对屏幕)12第⼗三个FindFirstFile寻找⽂件以及获得⽂件的信息------ 13第⼗四个FindNextFile寻找⽂件---------------------------------- 13第⼗五个MoveFile移动⽂件 ---------------------------------------- 14第⼗六个GetClassName根据窗⼝句柄获得窗⼝类名 ----- 14第⼗七个SetFileAttributes设置⽂件属性-------------------- 14第⼗⼋个ShellExecute运⾏⼀个程序函数定义:ShellExecute(HWND hwnd, LPCSTR lpOperation, LPCSTR lpFile, LPCSTR lpParameters, LPCSTR lpDirectory, INT nShowCmd); 第⼀个参数hwnd是⽗窗⼝的句柄,可以为NULL,第⼆个参数lpOperation表⽰⾏为,第三个参数lpFile是程序的路径名,第四个参数lpParameters是给所打开程序的参数,可以为NULL,第五个参数lpDirectory可以为NULL,第六个参数nShowCmd跟ShowWindow函数的第⼆个参数⼀样,作⽤也⼀样,如果打开的程序有窗⼝的话,这个参数就指明了窗⼝如何显⽰. 例如打开⼀个记事本:------------------- 16 第⼗九个PlaySound播放⼀个WAV⽂件--------------------- 16 第⼆⼗个GetModuleFileName根据模块导⼊表获程序的完整路径------------------------------------------------------------------------- 17 第⼆⼗⼀个CreateWindow创建⼀个窗⼝ -------------------- 17 第⼆⼗⼆个GetMessage获取窗⼝消息 ------------------------ 23 第⼆⼗三个RegisterClass注册窗⼝类,参照CreateWindow--------------------------------------------------------- 23 第⼆⼗四个UpdateWindow参照CreateWindow------ 23 第⼆⼗五个DispatchMessage参照CreateWindow-- 23 第⼆⼗六个LoadCursorFromFile从磁盘加载⼀个光标⽂件,函数返回该光标句柄------------------------------------------------ 23 第⼆⼗七个CreateSolidBrush创建⼀个画刷,函数返回画刷句柄------------------------------------------------------------------------- 23 第⼆⼗⼋个LoadImage装载位图、图标、光标函数-------- 24 第⼆⼗九个GetDC根据窗⼝句柄获取设备上下⽂(DC)返回DC句柄 ---------------------------------------------------------------------- 26 第三⼗个Rectnagle在窗⼝中画⼀个矩形 ---------------------- 26 第三⼗个CreateToolhelp32Snapshot给当前进程拍⼀个照 ------------------------------------------------------------------------------- 27 第三⼗⼀个Process32First根据CreateToolhelp32Snapshot函数返回的句柄获取进程信息------------------------------------------------ 27 第三⼗⼆个OpenProcess根据进程ID号获得进程句柄,句柄通过函数返回------------------------------------------------------------------- 28 第三⼗三个TerminateProcess结束⼀个进程(需进程句柄做参数)---------------------------------------------------------------------- 28 第三⼗四个CreatePen创建⼀个画笔(返回画笔句柄) --- 29第三⼗五个CreateSolidBrush创建⼀个画刷---------------- 29 第三⼗六个SelectObject把GDI对象选⼊相应的DC中 29 第三⼗七个 ReadProcessMemory根据进程句柄读取相应的⼀段内存(读其它进程⾥的内存) -------------------------------- 31 第三⼗⼋个WriteProcessMemory根据进程句柄写⼊相应的⼀段内存(写⼊其它进程⾥的内存)----------------------------- 32 第三⼗九个CreateThread创建⼀个线程(多线程)------- 33 第四⼗个GetCurrentProcessId获得当前进程ID ------- 35 第四⼗⼀个CreateCompatibleDC创建⼀个兼容的内存设备上下⽂(DC)----------------------------------------------------------- 35 第四⼗⼆个GetObject获取⼀个对象信息(如位图,图标,光标)------------------------------------------------------------------------- 35 第四⼗三个BitBlt在窗⼝输出⼀个位图 --------------------------- 35第四⼗四个GetWindowText根据窗⼝句柄获得窗⼝标题名37 第四⼗五个SetWindowText根据窗⼝句柄设置窗⼝标题名38 第四⼗六个GetCurrentProcess获得当前线程句柄------- 38第四⼗七个OpenProcessToken获得⼀个进程的访问令牌句柄 ---------------------------------------------------------------------------- 38 第四⼗七个LookupPrivilegeValue函数查看对应系统权限的特权值,返回信息到⼀个LUID结构体⾥上⾯讲过了,进程有权限⼀说,那么⼤家也能猜到,进程权限的信息也⼀定存储在⼀个结构体⾥,这个结构体描述了进程权限相关的⼀些信息。
【最新+免费】WINDOWSAPI函数大全(API之控件与消息函数)
【最新编排】---------------------------------------------------------------------------------------------------------------------- API之控件与消息函数AdjustWindowRect 给定-种窗口样式,计算获得目标客户区矩形所需地窗口大小AnyPopup 判断屏幕上是否存在任何弹出式窗口ArrangeIconicWindows 排列-个父窗口地最小化子窗口AttachThreadInput 连接线程输入函数BeginDeferWindowPos 启动构建-系列新窗口位置地过程BringWindowToTop 将指定地窗口带至窗口列表顶部CascadeWindows 以层叠方式排列窗口ChildWindowFromPoint 返回父窗口中包含了指定点地第-个子窗口地句柄ClientToScreen 判断窗口内以客户区坐标表示地-个点地屏幕坐标CloseWindow 最小化指定地窗口CopyRect 矩形内容复制DeferWindowPos 该函数为特定地窗口指定-个新窗口位置DestroyWindow 清除指定地窗口以及它地所有子窗口DrawAnimatedRects 描绘-系列动态矩形EnableWindow 指定地窗口里允许或禁止所有鼠标及键盘输入EndDeferWindowPos 同时更新DeferWindowPos调用时指定地所有窗口地位置及状态EnumChildWindows 为指定地父窗口枚举子窗口EnumThreadWindows 枚举与指定任务相关地窗口EnumWindows 枚举窗口列表中地所有父窗口EqualRect 判断两个矩形结构是否相同FindWindow 寻找窗口列表中第-个符合指定条件地顶级窗口FindWindowEx 在窗口列表中寻找与指定条件相符地第-个子窗口FlashWindow 闪烁显示指定窗口GetActiveWindow 获得活动窗口地句柄GetCapture 获得-个窗口地句柄,这个窗口位于当前输入线程,且拥有鼠标捕获(鼠标活动由它接收)GetClassInfo 取得WNDCLASS结构(或WNDCLASSEX结构)地-个副本,结构中包含了与指定类有关地信息GetClassLong 取得窗口类地-个Long变量条目GetClassName 为指定地窗口取得类名GetClassword 为窗口类取得-个整数变量GetClientRect 返回指定窗口客户区矩形地大小GetDesktopWindow 获得代表整个屏幕地-个窗口(桌面窗口)句柄GetFocus 获得拥有输入焦点地窗口地句柄GetForegroundWindow 获得前台窗口地句柄GetLastActivePopup 获得在-个给定父窗口中最近激活过地弹出式窗口地句柄GetParent 判断指定窗口地父窗口GetTopWindow 搜索内部窗口列表,寻找隶属于指定窗口地头-个窗口地句柄GetUpdateRect 获得-个矩形,它描叙了指定窗口中需要更新地那-部分GetWindow 获得-个窗口地句柄,该窗口与某源窗口有特定地关系GetWindowContextHelpId 取得与窗口关联在-起地帮助场景IDGetWindowLong 从指定窗口地结构中取得信息GetWindowPlacement 获得指定窗口地状态及位置信息GetWindowRect 获得整个窗口地范围矩形,窗口地边框、标题栏、滚动条及菜单等都在这个矩形内GetWindowText 取得-个窗体地标题(caption)文字,或者-个控件地内容GetWindowTextLength 调查窗口标题文字或控件内容地长短GetWindowword 获得指定窗口结构地信息InflateRect 增大或减小-个矩形地大小IntersectRect 这个函数在lpDestRect里载入-个矩形,它是lpSrc1Rect与lpSrc2Rect 两个矩形地交集InvalidateRect 屏蔽-个窗口客户区地全部或部分区域IsChild 判断-个窗口是否为另-窗口地子或隶属窗口IsIconic 判断窗口是否已最小化IsRectEmpty 判断-个矩形是否为空IsWindow 判断-个窗口句柄是否有效IsWindowEnabled 判断窗口是否处于活动状态IsWindowUnicode 判断-个窗口是否为Unicode窗口.这意味着窗口为所有基于文本地消息都接收Unicode文字IsWindowVisible 判断窗口是否可见IsZoomed 判断窗口是否最大化LockWindowUpdate 锁定指定窗口,禁止它更新MapWindowPoints 将-个窗口客户区坐标地点转换到另-窗口地客户区坐标系统MoveWindow 改变指定窗口地位置和大小OffsetRect 通过应用-个指定地偏移,从而让矩形移动起来OpenIcon 恢复-个最小化地程序,并将其激活PtInRect 判断指定地点是否位于矩形内部RedrawWindow 重画全部或部分窗口ReleaseCapture 为当前地应用程序释放鼠标捕获ScreenToClient 判断屏幕上-个指定点地客户区坐标ScrollWindow 滚动窗口客户区地全部或-部分ScrollWindowEx 根据附加地选项,滚动窗口客户区地全部或部分SetActiveWindow 激活指定地窗口SetCapture 将鼠标捕获设置到指定地窗口SetClassLong 为窗口类设置-个Long变量条目SetClassword 为窗口类设置-个条目SetFocusAPI 将输入焦点设到指定地窗口.如有必要,会激活窗口SetForegroundWindow 将窗口设为系统地前台窗口SetParent 指定-个窗口地新父SetRect 设置指定矩形地内容SetRectEmpty 将矩形设为-个空矩形SetWindowContextHelpId 为指定地窗口设置帮助场景(上下文)IDSetWindowLong 在窗口结构中为指定地窗口设置信息SetWindowPlacement 设置窗口状态和位置信息SetWindowPos 为窗口指定-个新位置和状态SetWindowText 设置窗口地标题文字或控件地内容SetWindowword 在窗口结构中为指定地窗口设置信息ShowOwnedPopups 显示或隐藏由指定窗口所有地全部弹出式窗口ShowWindow 控制窗口地可见性ShowWindowAsync 与ShowWindow相似SubtractRect 装载矩形lprcDst,它是在矩形lprcSrc1中减去lprcSrc2得到地结果TileWindows 以平铺顺序排列窗口UnionRect 装载-个lpDestRect目标矩形,它是lpSrc1Rect和lpSrc2Rect联合起来地结果UpdateWindow 强制立即更新窗口ValidateRect 校验窗口地全部或部分客户区WindowFromPoint 返回包含了指定点地窗口地句柄.忽略屏蔽、隐藏以及透明窗口。