搜档网
当前位置:搜档网 › 史上最强---win32 API函数大全文档

史上最强---win32 API函数大全文档

史上最强---win32 API函数大全文档
史上最强---win32 API函数大全文档

Win32 API函数大全

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 关闭一个内核对象。其中包括文件、文件映射、进程、线程、安全和同步对象等

CompareFileTime 对比两个文件的时间

CopyFile 复制文件

CreateDirectory 创建一个新目录

CreateFile 打开和创建文件、管道、邮槽、通信服务、设备以及控制台CreateFileMapping 创建一个新的文件映射对象

DeleteFile 删除指定文件

DeviceIoControl 对设备执行指定的操作

DosDateTimeToFileTime 将DOS日期和时间值转换成一个 win32 FILETIME 值FileTimeToDosDateTime 将一个 win32 FILETIME 值转换成DOS日期和时间值FileTimeToLocalFileTime 将一个FILETIME结构转换成本地时间FileTimeToSystemTime 根据一个FILETIME结构的内容,装载一个SYSTEMTIME 结构

FindClose 关闭由FindFirstFile函数创建的一个搜索句柄

FindFirstFile 根据文件名查找文件

FindNextFile 根据调用FindFirstFile函数时指定的一个文件名查找下一个文件

FlushFileBuffers 针对指定的文件句柄,刷新内部文件缓冲区FlushViewOfFile 将写入文件映射缓冲区的所有数据都刷新到磁盘GetBinaryType 判断文件是否可以执行

GetCompressedFileSize 判断一个压缩文件在磁盘上实际占据的字节数GetCurrentDirectory 在一个缓冲区中装载当前目录

GetDiskFreeSpace 获取与一个磁盘的组织有关的信息,以及了解剩余空间的容量

GetDiskFreeSpaceEx 获取与一个磁盘的组织以及剩余空间容量有关的信息GetDriveType 判断一个磁盘驱动器的类型

GetExpandedName 取得一个压缩文件的全名

GetFileAttributes 判断指定文件的属性

GetFileInformationByHandle 这个函数提供了获取文件信息的一种机制GetFileSize 判断文件长度

GetFileTime 取得指定文件的时间信息

GetFileType 在给出文件句柄的前提下,判断文件类型

GetFileVersionInfo 从支持版本标记的一个模块里获取文件版本信息GetFileVersionInfoSize 针对包含了版本资源的一个文件,判断容纳文件版本信息需要一个多大的缓冲区

GetFullPathName 获取指定文件的完整路径名

GetLogicalDrives 判断系统中存在哪些逻辑驱动器字母GetLogicalDriveStrings 获取一个字串,其中包含了当前所有逻辑驱动器的根驱动器路径

GetOverlappedResult 判断一个重叠操作当前的状态

GetPrivateProfileInt 为初始化文件(.ini文件)中指定的条目获取一个整数值

GetPrivateProfileSection 获取指定小节(在.ini文件中)所有项名和值的一个列表

GetPrivateProfileString 为初始化文件中指定的条目取得字串

GetProfileInt 取得win.ini初始化文件中指定条目的一个整数值GetProfileSection 获取指定小节(在win.ini文件中)所有项名和值的一个列表

GetProfileString 为win.ini初始化文件中指定的条目取得字串GetShortPathName 获取指定文件的短路径名

GetSystemDirectory 取得Windows系统目录(即System目录)的完整路径名GetTempFileName 这个函数包含了一个临时文件的名字,它可由应用程序使用GetTempPath 获取为临时文件指定的路径

GetVolumeInformation 获取与一个磁盘卷有关的信息

GetWindowsDirectory 获取Windows目录的完整路径名

hread 参考lread

hwrite 参考lwrite函数

lclose 关闭指定的文件

lcreat 创建一个文件

llseek 设置文件中进行读写的当前位置

LockFile 锁定文件的某一部分,使其不与其他应用程序共享

LockFileEx 与LockFile相似,只是它提供了更多的功能

lopen 以二进制模式打开指定的文件

lread 将文件中的数据读入内存缓冲区

lwrite 将数据从内存缓冲区写入一个文件

LZClose 关闭由LZOpenFile 或 LZInit函数打开的一个文件

LZCopy 复制一个文件

LZInit 这个函数用于初始化内部缓冲区

LZOpenFile 该函数能执行大量不同的文件处理,而且兼容于压缩文件

LZRead 将数据从文件读入内存缓冲区

LZSeek 设置一个文件中进行读写的当前位置

MapViewOfFile 将一个文件映射对象映射到当前应用程序的地址空间

MoveFile 移动文件

OpenFile 这个函数能执行大量不同的文件操作

OpenFileMapping 打开一个现成的文件映射对象

QueryDosDevice 在Windows NT中,DOS设备名会映射成NT系统设备名。该函数可判断当前的设备映射情况

ReadFile 从文件中读出数据

ReadFileEx 与ReadFile相似,只是它只能用于异步读操作,并包含了一个完整的回调

RegCloseKey 关闭系统注册表中的一个项(或键)

RegConnectRegistry 访问远程系统的部分注册表

RegCreateKey 在指定的项下创建或打开一个项

RegCreateKeyEx 在指定项下创建新项的更复杂的方式。在Win32环境中建议使用这个函数

RegDeleteKey 删除现有项下方一个指定的子项

RegDeleteValue 删除指定项下方的一个值

RegEnumKey 枚举指定项的子项。在Win32环境中应使用RegEnumKeyEx RegEnumKeyEx 枚举指定项下方的子项

RegEnumValue 枚举指定项的值

RegFlushKey 将对项和它的子项作出的改动实际写入磁盘

RegGetKeySecurity 获取与一个注册表项有关的安全信息

RegLoadKey 从以前用RegSaveKey函数创建的一个文件里装载注册表信息RegNotifyChangeKeyValue 注册表项或它的任何一个子项发生变化时,用这个函数提供一种通知机制

RegOpenKey 打开一个现有的注册表项

RegOpenKeyEx 打开一个现有的项。在win32下推荐使用这个函数RegQueryInfoKey 获取与一个项有关的信息

RegQueryValue 取得指定项或子项的默认(未命名)值

RegQueryValueEx 获取一个项的设置值

RegReplaceKey 用一个磁盘文件保存的信息替换注册表信息;并创建一个备份,在其中包含当前注册表信息

RegRestoreKey 从一个磁盘文件恢复注册表信息

RegSaveKey 将一个项以及它的所有子项都保存到一个磁盘文件RegSetKeySecurity 设置指定项的安全特性

RegSetValue 设置指定项或子项的默认值

RegSetValueEx 设置指定项的值

RegUnLoadKey 卸载指定的项以及它的所有子项

RemoveDirectory 删除指定目录

SearchPath 查找指定文件

SetCurrentDirectory 设置当前目录

SetEndOfFile 针对一个打开的文件,将当前文件位置设为文件末尾SetFileAttributes 设置文件属性

SetFilePointer 在一个文件中设置当前的读写位置

SetFileTime 设置文件的创建、访问及上次修改时间

SetHandleCount 这个函数不必在win32下使用;即使使用,也不会有任何效果SetVolumeLabel 设置一个磁盘的卷标(Label)

SystemTimeToFileTime 根据一个FILETIME结构的内容,载入一个SYSTEMTIME 结构

UnlockFile 解除对一个文件的锁定

UnlockFileEx 解除对一个文件的锁定

UnmapViewOfFile 在当前应用程序的内存地址空间解除对一个文件映射对象的映射

VerFindFile 用这个函数决定一个文件应安装到哪里

VerInstallFile 用这个函数安装一个文件

VerLanguageName 这个函数能根据16位语言代码获取一种语言的名称VerQueryValue 这个函数用于从版本资源中获取信息

WriteFile 将数据写入一个文件

WriteFileEx 与WriteFile类似,只是它只能用于异步写操作,并包括了一个完整的回调

WritePrivateProfileSection 为一个初始化文件(.ini)中指定的小节设置所有项名和值

WritePrivateProfileString 在初始化文件指定小节内设置一个字串

WriteProfileSection 为Win.ini初始化文件中一个指定的小节设置所有项名和值

WriteProfileString 在Win.ini初始化文件指定小节内设置一个字串

4. API之打印函数

AbortDoc 取消一份文档的打印

AbortPrinter 删除与一台打印机关联在一起的缓冲文件

AddForm 为打印机的表单列表添加一个新表单

AddJob 用于获取一个有效的路径名,以便用它为作业创建一个后台打印文件。它也会为作业分配一个作业编号

AddMonitor 为系统添加一个打印机监视器

AddPort 启动“添加端口”对话框,允许用户在系统可用端口列表中加入一个新端口

AddPrinter 在系统中添加一台新打印机

AddPrinterConnection 连接指定的打印机

AddPrinterDriver 为指定的系统添加一个打印驱动程序

AddPrintProcessor 为指定的系统添加一个打印处理器

AddPrintProvidor 为系统添加一个打印供应商

Advance dDocumentProperties 启动打印机文档设置对话框

ClosePrinter 关闭一个打开的打印机对象

ConfigurePort 针对指定的端口,启动一个端口配置对话框ConnectToPrinterDlg 启动连接打印机对话框,用它同访问网络的打印机连接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 将发送目录中的数据写入打印机

5. API之文本和字体函数

AddFontResource 在Windows系统中添加一种字体资源

CreateFont 用指定的属性创建一种逻辑字体

CreateFontIndirect 用指定的属性创建一种逻辑字体CreateScalableFontResource 为一种TureType字体创建一个资源文件,以便能用API函数AddFontResource将其加入Windows系统

DrawText 将文本描绘到指定的矩形中

DrawTextEx 与DrawText相似,只是加入了更多的功能

EnumFontFamilies 列举指定设备可用的字体

EnumFontFamiliesEx 列举指定设备可用的字体

EnumFonts 列举指定设备可用的字体

ExtTextOut 经过扩展的文本描绘函数。也请参考SetTextAlign函数GetAspectRatioFilterEx 用SetMapperFlags要求Windows只选择与设备当前纵横比相符的光栅字体时,本函数可判断纵横比大小

GetCharABCWidths 判断TureType字体中一个或多个字符的A-B-C大小GetCharABCWidthsFloat 查询一种字体中一个或多个字符的A-B-C尺寸GetCharacterPlacement 该函数用于了解如何用一个给定的字符显示一个字串GetCharWidth 调查字体中一个或多个字符的宽度

GetFontData 接收一种可缩放字体文件的数据

GetFontLanguageInfo 返回目前选入指定设备场景中的字体的信息GetGlyphOutline 取得TureType字体中构成一个字符的曲线信息GetKerningPairs 取得指定字体的字距信息

GetOutlineTextMetrics 接收与TureType字体内部特征有关的详细信息GetRasterizerCaps 了解系统是否有能力支持可缩放的字体GetTabbedTextExtent 判断一个字串占据的范围,同时考虑制表站扩充的因素GetTextAlign 接收一个设备场景当前的文本对齐标志GetTextCharacterExtra 判断额外字符间距的当前值

GetTextCharset 接收当前选入指定设备场景的字体的字符集标识符GetTextCharsetInfo 获取与当前选定字体的字符集有关的详细信息GetTextColor 判断当前字体颜色。通常也称为“前景色”GetTextExtentExPoint 判断要填入指定区域的字符数量。也用一个数组装载每个字符的范围信息

GetTextExtentPoint 判断一个字串的大小(范围)

GetTextFace 获取一种字体的字样名

GetTextMetrics 获取与选入一种设备场景的物理字体有关的信息

GrayString 描绘一个以灰色显示的字串。通常由Windows用于标识禁止状态PolyTextOut 描绘一系列字串

RemoveFontResource 从Windows系统中删除一种字体资源

SetMapperFlags Windows对字体进行映射时,可用该函数选择与目标设备的纵横比相符的光栅字体

SetTextAlign 设置文本对齐方式,并指定在文本输出过程中使用设备场景的当前位置

SetTextCharacterExtra 描绘文本的时候,指定要在字符间插入的额外间距SetTextColor 设置当前文本颜色。这种颜色也称为“前景色”SetTextJustification 通过指定一个文本行应占据的额外空间,可用这个函数对文本进行两端对齐处理

TabbedTextOut 支持制表站的一个文本描绘函数

TextOut 文本绘图函数

6. API之菜单函数

AppendMenu 在指定的菜单里添加一个菜单项

CheckMenuItem 复选或撤消复选指定的菜单条目

CheckMenuRadioItem 指定一个菜单条目被复选成“单选”项目

CreateMenu 创建新菜单

CreatePopupMenu 创建一个空的弹出式菜单

DeleteMenu 删除指定的菜单条目

DestroyMenu 删除指定的菜单

DrawMenuBar 为指定的窗口重画菜单

EnableMenuItem 允许或禁止指定的菜单条目

GetMenu 取得窗口中一个菜单的句柄

GetMenuCheckMarkDimensions 返回一个菜单复选符的大小GetMenuContextHelpId 取得一个菜单的帮助场景ID

GetMenuDefaultItem 判断菜单中的哪个条目是默认条目

GetMenuItemCount 返回菜单中条目(菜单项)的数量

GetMenuItemID 返回位于菜单中指定位置处的条目的菜单ID GetMenuItemInfo 取得(接收)与一个菜单条目有关的特定信息GetMenuItemRect 在一个矩形中装载指定菜单条目的屏幕坐标信息GetMenuState 取得与指定菜单条目状态有关的信息

GetMenuString 取得指定菜单条目的字串

GetSubMenu 取得一个弹出式菜单的句柄,它位于菜单中指定的位置GetSystemMenu 取得指定窗口的系统菜单的句柄

HiliteMenuItem 控制顶级菜单条目的加亮显示状态

InsertMenu 在菜单的指定位置处插入一个菜单条目,并根据需要将其他条目向下移动

InsertMenuItem 插入一个新菜单条目

IsMenu 判断指定的句柄是否为一个菜单的句柄

LoadMenu 从指定的模块或应用程序实例中载入一个菜单

LoadMenuIndirect 载入一个菜单

MenuItemFromPoint 判断哪个菜单条目包含了屏幕上一个指定的点ModifyMenu 改变菜单条目

RemoveMenu 删除指定的菜单条目

SetMenu 设置窗口菜单

SetMenuContextHelpId 设置一个菜单的帮助场景ID

SetMenuDefaultItem 将一个菜单条目设为默认条目

SetMenuItemBitmaps 设置一幅特定位图,令其在指定的菜单条目中使用,代替标准的复选符号(√)

SetMenuItemInfo 为一个菜单条目设置指定的信息

TrackPopupMenu 在屏幕的任意地方显示一个弹出式菜单

TrackPopupMenuEx 与TrackPopupMenu相似,只是它提供了额外的功能

7. API之位图、图标和光栅运算函数

BitBlt 将一幅位图从一个设备场景复制到另一个

CopyIcon 制作指定图标或鼠标指针的一个副本。这个副本从属于发出调用的应用程序

CopyImage 复制位图、图标或指针,同时在复制过程中进行一些转换工作CreateBitmap 按照规定的格式创建一幅与设备有关位图CreateBitmapIndirect 创建一幅与设备有关位图

CreateCompatibleBitmap 创建一幅与设备有关位图,它与指定的设备场景兼容CreateCursor 创建一个鼠标指针

CreateDIBitmap 根据一幅与设备无关的位图创建一幅与设备有关的位图CreateDIBSection 创建一个DIBSection

CreateIcon 创建一个图标

CreateIconIndirect 创建一个图标

DestroyCursor 清除指定的鼠标指针,并释放它占用的所有系统资源DestroyIcon 清除图标

DrawIcon 在指定的位置画一个图标

DrawIconEx 描绘一个图标或鼠标指针。与DrawIcon相比,这个函数提供了更多的功能

ExtractAssociatedIcon 判断一个可执行程序或DLL中是否存在图标,或是否有图标与系统注册表中指定的文件存在关联并提取之

ExtractIcon 判断一个可执行文件或DLL中是否有图标存在,并将其提取出来GetBitmapBits 将来自位图的二进制位复制到一个缓冲区GetBitmapDimensionEx 取得一幅位图的宽度和高度

GetDIBColorTable 从选入设备场景的DIBSection中取得颜色表信息GetDIBits 将来自一幅位图的二进制位复制到一幅与设备无关的位图里

GetIconInfo 取得与图标有关的信息

GetStretchBltMode 判断StretchBlt 和 StretchDIBits函数采用的伸缩模式

LoadBitmap 从指定的模块或应用程序实例中载入一幅位图

LoadCursor 从指定的模块或应用程序实例中载入一个鼠标指针

LoadCursorFromFile 在一个指针文件或一个动画指针文件的基础上创建一个指针LoadIcon 从指定的模块或应用程序实例中载入一个图标

LoadImage 载入一个位图、图标或指针

MaskBlt 执行复杂的图象传输,同时进行掩模(MASK)处理

PatBlt 在当前选定的刷子的基础上,用一个图案填充指定的设备场景

PlgBlt 复制一幅位图,同时将其转换成一个平行四边形。利用它可对位图进行旋转处理SetBitmapBits 将来自缓冲区的二进制位复制到一幅位图

SetBitmapDimensionEx 设置一幅位图的宽度。以一毫米的十分之一为单位SetDIBColorTable 设置选入设备场景的一个DIBSection的颜色表信息

SetDIBits 将来自与设备无关位图的二进制位复制到一幅与设备有关的位图里

SetDIBitsToDevice 将一幅与设备无关位图的全部或部分数据直接复制到一个设备SetStretchBltMode 指定StretchBlt 和 StretchDIBits函数的伸缩模式

StretchBlt 将一幅位图从一个设备场景复制到另一个

StretchDIBits 将一幅与设备无关位图的全部或部分数据直接复制到指定的设备场景8. API之绘图函数

AbortPath 抛弃选入指定设备场景中的所有路径。也取消目前正在进行的任何路径的创建工作

AngleArc 用一个连接弧画一条线

Arc 画一个圆弧

BeginPath 启动一个路径分支

CancelDC 取消另一个线程里的长时间绘图操作

Chord 画一个弦

CloseEnhMetaFile 关闭指定的增强型图元文件设备场景,并将新建的图元文件返回一个句柄CloseFigure 描绘到一个路径时,关闭当前打开的图形

CloseMetaFile 关闭指定的图元文件设备场景,并向新建的图元文件返回一个句柄CopyEnhMetaFile 制作指定增强型图元文件的一个副本(拷贝)

CopyMetaFile 制作指定(标准)图元文件的一个副本

CreateBrushIndirect 在一个LOGBRUSH数据结构的基础上创建一个刷子CreateDIBPatternBrush 用一幅与设备无关的位图创建一个刷子,以便指定刷子样式(图案)CreateEnhMetaFile 创建一个增强型的图元文件设备场景

CreateHatchBrush 创建带有阴影图案的一个刷子

CreateMetaFile 创建一个图元文件设备场景

CreatePatternBrush 用指定了刷子图案的一幅位图创建一个刷子

CreatePen 用指定的样式、宽度和颜色创建一个画笔

CreatePenIndirect 根据指定的LOGPEN结构创建一个画笔

CreateSolidBrush 用纯色创建一个刷子

DeleteEnhMetaFile 删除指定的增强型图元文件

DeleteMetaFile 删除指定的图元文件

DeleteObject 删除GDI对象,对象使用的所有系统资源都会被释放

DrawEdge 用指定的样式描绘一个矩形的边框

DrawEscape 换码(Escape)函数将数据直接发至显示设备驱动程序

DrawFocusRect 画一个焦点矩形

DrawFrameControl 描绘一个标准控件

DrawState 为一幅图象或绘图操作应用各式各样的效果

Ellipse 描绘一个椭圆,由指定的矩形围绕

EndPath 停止定义一个路径

EnumEnhMetaFile 针对一个增强型图元文件,列举其中单独的图元文件记录EnumMetaFile 为一个标准的windows图元文件枚举单独的图元文件记录

EnumObjects 枚举可随同指定设备场景使用的画笔和刷子

ExtCreatePen 创建一个扩展画笔(装饰或几何)

ExtFloodFill 在指定的设备场景里,用当前选择的刷子填充一个区域

FillPath 关闭路径中任何打开的图形,并用当前刷子填充

FillRect 用指定的刷子填充一个矩形

FlattenPath 将一个路径中的所有曲线都转换成线段

FloodFill 用当前选定的刷子在指定的设备场景中填充一个区域

FrameRect 用指定的刷子围绕一个矩形画一个边框

GdiComment 为指定的增强型图元文件设备场景添加一条注释信息

GdiFlush 执行任何未决的绘图操作

GdiGetBatchLimit 判断有多少个GDI绘图命令位于队列中

GdiSetBatchLimit 指定有多少个GDI绘图命令能够进入队列

GetArcDirection 画圆弧的时候,判断当前采用的绘图方向

GetBkColor 取得指定设备场景当前的背景颜色

GetBkMode 针对指定的设备场景,取得当前的背景填充模式

GetBrushOrgEx 判断指定设备场景中当前选定刷子起点

GetCurrentObject 获得指定类型的当前选定对象

GetCurrentPositionEx 在指定的设备场景中取得当前的画笔位置

GetEnhMetaFile 取得磁盘文件中包含的一个增强型图元文件的图元文件句柄GetEnhMetaFileBits 将指定的增强型图元文件复制到一个内存缓冲区里GetEnhMetaFileDescription 返回对一个增强型图元文件的说明

GetEnhMetaFileHeader 取得增强型图元文件的图元文件头GetEnhMetaFilePaletteEntries 取得增强型图元文件的全部或部分调色板

GetMetaFile 取得包含在一个磁盘文件中的图元文件的图元文件句柄

GetMetaFileBitsEx 将指定的图元文件复制到一个内存缓冲区

GetMiterLimit 取得设备场景的斜率限制(Miter)设置

GetNearestColor 根据设备的显示能力,取得与指定颜色最接近的一种纯色

GetObjectAPI 取得对指定对象进行说明的一个结构

GetObjectType 判断由指定句柄引用的GDI对象的类型

GetPath 取得对当前路径进行定义的一系列数据

GetPixel 在指定的设备场景中取得一个像素的RGB值

GetPolyFillMode 针对指定的设备场景,获得多边形填充模式

GetROP2 针对指定的设备场景,取得当前的绘图模式

GetStockObject 取得一个固有对象(Stock)

GetSysColorBrush 为任何一种标准系统颜色取得一个刷子

GetWinMetaFileBits 通过在一个缓冲区中填充用于标准图元文件的数据,将一个增强型图元文件转换成标准windows图元文件

InvertRect 通过反转每个像素的值,从而反转一个设备场景中指定的矩形

LineDDA 枚举指定线段中的所有点

LineTo 用当前画笔画一条线,从当前位置连到一个指定的点

MoveToEx 为指定的设备场景指定一个新的当前画笔位置

PaintDesk 在指定的设备场景中描绘桌面墙纸图案

PathToRegion 将当前选定的路径转换到一个区域里

Pie 画一个饼图

PlayEnhMetaFile 在指定的设备场景中画一个增强型图元文件

PlayEnhMetaFileRecord 回放单独一条增强型图元文件记录

PlayMetaFile 在指定的设备场景中回放一个图元文件

PlayMetaFileRecord 回放来自图元文件的单条记录

PolyBezier 描绘一条或多条贝塞尔(Bezier)曲线

PolyDraw 描绘一条复杂的曲线,由线段及贝塞尔曲线组成

Polygon 描绘一个多边形

Polyline 用当前画笔描绘一系列线段

PolyPolygon 用当前选定画笔描绘两个或多个多边形

PolyPolyline 用当前选定画笔描绘两个或多个多边形

Rectangle 用当前选定的画笔描绘矩形,并用当前选定的刷子填充

RoundRect 用当前选定的画笔画一个圆角矩形,并用当前选定的刷子在其中填充SelectClipPath 将设备场景当前的路径合并到剪切区域里

SelectObject 为当前设备场景选择图形对象

SetArcDirection 设置圆弧的描绘方向

SetBkColor 为指定的设备场景设置背景颜色

SetBkMode 指定阴影刷子、虚线画笔以及字符中的空隙的填充方式

SetBrushOrgEx 为指定的设备场景设置当前选定刷子的起点

SetEnhMetaFileBits 用指定内存缓冲区内包含的数据创建一个增强型图元文件SetMetaFileBitsEx 用包含在指定内存缓冲区内的数据结构创建一个图元文件SetMiterLimit 设置设备场景当前的斜率限制

SetPixel 在指定的设备场景中设置一个像素的RGB值

SetPixelV 在指定的设备场景中设置一个像素的RGB值

SetPolyFillMode 设置多边形的填充模式

SetROP2 设置指定设备场景的绘图模式。与vb的DrawMode属性完全一致SetWinMetaFileBits 将一个标准Windows图元文件转换成增强型图元文件StrokeAndFillPath 针对指定的设备场景,关闭路径上打开的所有区域

StrokePath 用当前画笔描绘一个路径的轮廓。打开的图形不会被这个函数关闭UnrealizeObject 将一个刷子对象选入设备场景之前,如刷子的起点准备用SetBrushOrgEx修改,则必须先调用本函数

WidenPath 根据选定画笔的宽度,重新定义当前选定的路径

9. API之设备场景函数

CombineRgn 将两个区域组合为一个新区域

CombineTransform 驱动世界转换。它相当于依顺序进行两次转换CreateCompatibleDC 创建一个与特定设备场景一致的内存设备场景

CreateDC 为专门设备创建设备场景

CreateEllipticRgn 创建一个椭圆

CreateEllipticRgnIndirect 创建一个内切于特定矩形的椭圆区域

CreateIC 为专用设备创建一个信息场景

CreatePolygonRgn 创建一个由一系列点围成的区域

CreatePolyPolygonRgn 创建由多个多边形构成的区域。每个多边形都应是封闭的CreateRectRgn 创建一个矩形区域

CreateRectRgnIndirect 创建一个矩形区域

CreateRoundRectRgn 创建一个圆角矩形

DeleteDC 删除专用设备场景或信息场景,释放所有相关窗口资源

DPtoLP 将点阵从设备坐标转换到专用设备场景逻辑坐标

EqualRgn 确定两个区域是否相等

ExcludeClipRect 从专用设备场景的剪裁区中去掉一个矩形区。矩形内不能进行绘图ExcludeUpdateRgn 从专用设备场景剪裁区去掉指定窗口的刷新区域

ExtCreateRegion 根据世界转换修改区域

ExtSelectClipRgn 将指定区域组合到设备场景的当前剪裁区

FillRgn 用指定刷子填充指定区域

FrameRgn 用指定刷子围绕指定区域画一个外框

GetBoundsRect 获取指定设备场景的边界矩形

GetClipBox 获取完全包含指定设备场景剪裁区的最小矩形

GetClipRgn 获取设备场景当前剪裁区

GetDC 获取指定窗口的设备场景

GetDCEx 为指定窗口获取设备场景。相比GetDC,本函数提供了更多的选项GetDCOrgEx 获取指定设备场景起点位置(以屏幕坐标表示)

GetDeviceCaps 根据指定设备场景代表的设备的功能返回信息

GetGraphicsMode 确定是否允许增强图形模式(世界转换)

GetMapMode 为特定设备场景调入映象模式

GetRegionData 装入描述一个区域信息的RgnData结构或缓冲区

GetRgnBox 获取完全包含指定区域的最小矩形

GetUpdateRgn 确定指定窗口的刷新区域。该区域当前无效,需要刷新GetViewportExtEx 获取设备场景视口(viewport)范围

GetViewportOrgEx 获取设备场景视口起点

GetWindowDC 获取整个窗口(包括边框、滚动条、标题栏、菜单等)的设备场景

G etWindowExtEx 获取指定设备场景的窗口范围

GetWindowOrgEx 获取指定设备场景的逻辑窗口的起点

GetWindowRgn 获取窗口区域

GetWorldTransform 如果有世界转换,为设备场景获取当前世界转换IntersectClipRect 为指定设备定义一个新的剪裁区

InvalidateRgn 使窗口指定区域不活动,并将它加入窗口刷新区,使之可随后被重画

InvertRgn 通过颠倒每个像素值反转设备场景指定区域

LPtoDP 将点阵从指定设备场景逻辑坐标转换为设备坐标ModifyWorldTransform 根据指定的模式修改世界转换

OffsetClipRgn 按指定量平移设备场景剪裁区

OffsetRgn 按指定偏移量平移指定区域

OffsetViewportOrgEx 平移设备场景视口区域

OffsetWindowOrgEx 平移指定设备场景窗口起点

PaintRgn 用当前刷子背景色填充指定区域

PtInRegion 确定点是否在指定区域内

PtVisible 确定指定点是否可见(即,点是否在设备场景剪裁区内)RectInRegion 确定矩形是否有部分在指定区域内

RectVisible 确定指定矩形是否有部分可见(是否在设备场景剪裁区内)ReleaseDC 释放由调用GetDC或GetWindowDC函数获取的指定设备场景

RestoreDC 从设备场景堆栈恢复一个原先保存的设备场景

SaveDC 将指定设备场景状态保存到Windows设备场景堆栈ScaleViewportExtEx 缩放设备场景视口的范围

ScaleWindowExtEx 缩放指定设备场景窗口范围

ScrollDC 在窗口(由设备场景代表)中水平和(或)垂直滚动矩形SelectClipRgn 为指定设备场景选择新的剪裁区

SetBoundsRect 设置指定设备场景的边界矩形

SetGraphicsMode 允许或禁止增强图形模式,以提供某些支持(包括世界转换)SetMapMode 设置指定设备场景的映射模式

SetRectRgn 设置区域为指定的矩形

SetViewportExtEx 设置设备场景视口范围

SetViewportOrgEx 设置设备场景视口起点

SetWindowExtEx 设置指定设备场景窗口范围

SetWindowOrgEx 设置指定设备场景窗口起点

SetWindowRgn 设置窗口区域

SetWorldTransform 设置世界转换

ValidateRgn 激活窗口中指定区域,把它从刷新区移走

WindowFromDC 取回与某一设备场景相关的窗口的句柄

10. API之硬件与系统函数

ActivateKeyboardLayout 激活一个新的键盘布局。键盘布局定义了按键在一种物理性键盘上的位置与含义

Beep 用于生成简单的声音

CharToOem 将一个字串从ANSI字符集转换到OEM字符集

ClipCursor 将指针限制到指定区域

ConvertDefaultLocale 将一个特殊的地方标识符转换成真实的地方ID CreateCaret 根据指定的信息创建一个插入符(光标),并将它选定为指定窗口的默认插入符

DestroyCaret 清除(破坏)一个插入符

EnumCalendarInfo 枚举在指定“地方”环境中可用的日历信息EnumDateFormats 列举指定的“当地”设置中可用的长、短日期格式EnumSystemCodePages 枚举系统中已安装或支持的代码页EnumSystemLocales 枚举系统已经安装或提供支持的“地方”设置EnumTimeFormats 枚举一个指定的地方适用的时间格式

ExitWindowsEx 退出windows,并用特定的选项重新启动ExpandEnvironmentStrings 扩充环境字串

FreeEnvironmentStrings 翻译指定的环境字串块

GetACP 判断目前正在生效的ANSI代码页

GetAsyncKeyState 判断函数调用时指定虚拟键的状态

GetCaretBlinkTime 判断插入符光标的闪烁频率

GetCaretPos 判断插入符的当前位置

GetClipCursor 取得一个矩形,用于描述目前为鼠标指针规定的剪切区域GetCommandLine 获得指向当前命令行缓冲区的一个指针

GetComputerName 取得这台计算机的名称

GetCPInfo 取得与指定代码页有关的信息

GetCurrencyFormat 针对指定的“地方”设置,根据货币格式格式化一个数字GetCursor 获取目前选择的鼠标指针的句柄

GetCursorPos 获取鼠标指针的当前位置

GetDateFormat 针对指定的“当地”格式,对一个系统日期进行格式化GetDoubleClickTime 判断连续两次鼠标单击之间会被处理成双击事件的间隔时间

GetEnvironmentStrings 为包含了当前环境字串设置的一个内存块分配和返回一个句柄

GetEnvironmentVariable 取得一个环境变量的值

GetInputState 判断是否存在任何待决(等待处理)的鼠标或键盘事件GetKBCodePage 由GetOEMCP取代,两者功能完全相同

GetKeyboardLayout 取得一个句柄,描述指定应用程序的键盘布局GetKeyboardLayoutList 获得系统适用的所有键盘布局的一个列表GetKeyboardLayoutName 取得当前活动键盘布局的名称

GetKeyboardState 取得键盘上每个虚拟键当前的状态

GetKeyboardType 了解与正在使用的键盘有关的信息

GetKeyNameText 在给出扫描码的前提下,判断键名

GetKeyState 针对已处理过的按键,在最近一次输入信息时,判断指定虚拟键的状态

GetLastError 针对之前调用的api函数,用这个函数取得扩展错误信息GetLocaleInfo 取得与指定“地方”有关的信息

GetLocalTime 取得本地日期和时间

GetNumberFormat 针对指定的“地方”,按特定的格式格式化一个数字GetOEMCP 判断在OEM和ANSI字符集间转换的windows代码页GetQueueStatus 判断应用程序消息队列中待决(等待处理)的消息类型GetSysColor 判断指定windows显示对象的颜色

GetSystemDefaultLangID 取得系统的默认语言ID

GetSystemDefaultLCID 取得当前的默认系统“地方”

GetSystemInfo 取得与底层硬件平台有关的信息

GetSystemMetrics 返回与windows环境有关的信息

GetSystemPowerStatus 获得与当前系统电源状态有关的信息

GetSystemTime 取得当前系统时间,这个时间采用的是“协同世界时间”(即UTC,也叫做GMT)格式

GetSystemTimeAdjustment 使内部系统时钟与一个外部的时钟信号源同步GetThreadLocale 取得当前线程的地方ID

GetTickCount 用于获取自windows启动以来经历的时间长度(毫秒)GetTimeFormat 针对当前指定的“地方”,按特定的格式格式化一个系统时间GetTimeZoneInformation 取得与系统时区设置有关的信息GetUserDefaultLangID 为当前用户取得默认语言ID

GetUserDefaultLCID 取得当前用户的默认“地方”设置

GetUserName 取得当前用户的名字

GetVersion 判断当前运行的Windows和DOS版本

GetVersionEx 取得与平台和操作系统有关的版本信息

HideCaret 在指定的窗口隐藏插入符(光标)

IsValidCodePage 判断一个代码页是否有效

IsValidLocale 判断地方标识符是否有效

keybd_event 这个函数模拟了键盘行动

LoadKeyboardLayout 载入一个键盘布局

MapVirtualKey 根据指定的映射类型,执行不同的扫描码和字符转换MapVirtualKeyEx 根据指定的映射类型,执行不同的扫描码和字符转换MessageBeep 播放一个系统声音。系统声音的分配方案是在控制面板里决定的mouse_event 模拟一次鼠标事件

OemKeyScan 判断OEM字符集中的一个ASCII字符的扫描码和Shift键状态OemToChar 将OEM字符集的一个字串转换到ANSI字符集

SetCaretBlinkTime 指定插入符(光标)的闪烁频率

SetCaretPos 指定插入符的位置

SetComputerName 设置新的计算机名

SetCursor 将指定的鼠标指针设为当前指针

SetCursorPos 设置指针的位置

SetDoubleClickTime 设置连续两次鼠标单击之间能使系统认为是双击事件的间隔时间

SetEnvironmentVariable 将一个环境变量设为指定的值

SetKeyboardState 设置每个虚拟键当前在键盘上的状态

SetLocaleInfo 改变用户“地方”设置信息

SetLocalTime 设置当前地方时间

SetSysColors 设置指定窗口显示对象的颜色

SetSystemCursor 改变任何一个标准系统指针

SetSystemTime 设置当前系统时间

SetSystemTimeAdjustment 定时添加一个校准值使内部系统时钟与一个外部的时钟信号源同步

SetThreadLocale 为当前线程设置地方

SetTimeZoneInformation 设置系统时区信息

ShowCaret 在指定的窗口里显示插入符(光标)

ShowCursor 控制鼠标指针的可视性

SwapMouseButton 决定是否互换鼠标左右键的功能

SystemParametersInfo 获取和设置数量众多的windows系统参数SystemTimeToTzSpecificLocalTime 将系统时间转换成地方时间

ToAscii 根据当前的扫描码和键盘信息,将一个虚拟键转换成ASCII字符ToUnicode 根据当前的扫描码和键盘信息,将一个虚拟键转换成Unicode字符UnloadKeyboardLayout 卸载指定的键盘布局

VkKeyScan 针对Windows字符集中一个ASCII字符,判断虚拟键码和Shift键的状态

11. 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 等侯单个对象或一系列对象发出信号。如返回条件已经满足,则立即返回

SetPriorityClass 设置一个进程的优先级别SetProcessShutdownParameters 在系统关闭期间,为指定进程设置他相对于其它程序的关闭顺序

SetProcessWorkingSetSize 设置操作系统实际划分给进程使用的内存容量SetThreadPriority 设定线程的优先级别

ShellExecute 查找与指定文件关联在一起的程序的文件名

TerminateProcess 结束一个进程

WinExec 运行指定的程序

12. 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 取得与窗口关联在一起的帮助场景ID GetWindowLong 从指定窗口的结构中取得信息

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 为指定的窗口设置帮助场景(上下文)ID SetWindowLong 在窗口结构中为指定的窗口设置信息

SetWindowPlacement 设置窗口状态和位置信息

SetWindowPos 为窗口指定一个新位置和状态

SetWindowText 设置窗口的标题文字或控件的内容

SetWindowWord 在窗口结构中为指定的窗口设置信息

ShowOwnedPopups 显示或隐藏由指定窗口所有的全部弹出式窗口ShowWindow 控制窗口的可见性

ShowWindowAsync 与ShowWindow相似

SubtractRect 装载矩形lprcDst,它是在矩形lprcSrc1中减去lprcSrc2得到的结果

TileWindows 以平铺顺序排列窗口

UnionRect 装载一个lpDestRect目标矩形,它是lpSrc1Rect和lpSrc2Rect联合起来的结果

UpdateWindow 强制立即更新窗口

ValidateRect 校验窗口的全部或部分客户区

WindowFromPoint 返回包含了指定点的窗口的句柄。忽略屏蔽、隐藏以及透明窗口

成语之最大全

成语之最大全 最差的座位——如坐针毡最能的小偷——偷天换日最窄的道路——羊肠小道最大的手掌——一手遮天最好的衣服——天衣无缝最荒的地方——不毛之地最甜的炮弹——糖衣炮弹最大的肚子——包罗万象最美的建筑——鬼斧神工最大的改革——翻天覆地最牢的头发——一发千钧最差的工事——不攻自破最轻的拷打——不痛不痒最笨的盗贼——掩耳盗铃最遥远的地方——天涯海角最悬殊的区别——天渊之别最反常的气候——晴天霹雳最宽阔的胸怀——虚怀若谷最昂贵的稿费——一字千金最绝望的前途——山穷水尽最高的巨人——顶天立地最难做的饭——无米之炊最长的寿命——万寿无疆最有学问的人——博古通今 最长的腿——一步登天最快的速度——风驰电掣最吝啬的人——一毛不拔最艰难的争辩——理屈词穷最快的流水——一泻千里最高的气——气冲霄汉最怕冷的人——不寒而栗最宽阔的胸——怀虚怀若谷最大的眼——放眼世界最大的嘴——气吞山河最大的差别——天壤之别最长的日子——天长地久最大的被子——铺天盖地最大的步伐——一步登天 最大的浪费——挥金如土最本分的人——安份守己最好的窝——安乐窝最黑的时候——暗无天日最无用的做法——捕风捉影最厉害的举重运动员——拔山举鼎最成功的地方——不败之地最好的搬迁——不次之迁最坏的结局——不得善终最有效的禁令——不敢越雷池一步最深的缘分——不解之缘最荒凉的草原——不牧之地最安静的时候——不声不响最没吃的地方——不食之地最可笑的绝食——不食周粟最差劲的买卖——不惜工本最坏的后代——不肖子孙最肮脏的财产——不义之财 最大的抄袭——不易一字最难治的病——不治之症最差的证据——不足为据最佳的配对——才子佳人最悲惨的世界——惨不忍睹最困难的生意——惨淡经营最残酷的心——豺狐之心最可怕的吻——豺狼之吻最长的议论文——长篇大论最长的夜晚——长夜难明最繁华的街道——车水马龙最好的女婿——乘龙佳婿最贪吃的人——吃不了兜着走最红的心——赤子之心最激烈的辩论——唇枪舌剑最荒凉的地方——寸草不生 最有用的木材——栋梁之材最没价值的东西——分文不值最有效的讥讽——讽一劝百最喜欢说别人好话——逢人说项最稀罕的东西——凤毛麟角最大的福——福如东海最有福的人——福星高照最好的副业门经——狗拿耗子最精湛的技术——鬼斧神工最成功的外科手术——狗尾续貂

孙鑫深入详解MFC学习笔记

Windows编程 一、#define的几个注意点 ①#与##的用法; #xxx将后面的参数xxx字符串化 xxx##yyy,将两个参数连接 ②\的用法 一行结束使用,表示一行未结束。 二、函数调用约定_stdcall _stdcall是Pascal方式清理C方式压栈,通常用于Win32Api中,函数采用从右到左的压栈方式,堆栈由它自己清理。在win32应用程序里,宏APIENTRY,WINAPI,都表示_stdcall,非常常见。 相对应的_cdecl,堆栈由main()函数或者其他函数清理。 C和C++程序的缺省调用方式则为__cdecl,下图为VC++6.0的默认设置,因此在不显式写明调用约定的情况下,一般都是采用__cdecl方式,而在与Windows API打交道的场景下,通常都是显式的写明使用__stdcall,才能与Windows API保持一致。 另外,还要注意的是,如printf此类支持可变参数的函数,由于不知道调用者会传递多少个参数,也不知道会压多少个参数入栈,因此函数本身内部不可能清理堆栈,只能由调用者清理了。 三、防止头文件重复包含----预编译 在写好的类的首位加上预编译代码,例如: #ifndef xxx_h #define xxx_h Class xxx { ... }; #endif 四、HDC、CDC、CClientDC、CWindowDC HDC是平台SDK提供的全局类,与设备上下文相关 CDC则是类似于封装在CWnd中的一个HDC。 CClientDC:继承于CDC,构造函数完成获取DC,析构函数完成释放DC。 CWindowDC:继承于CDC,构造函数完成获取DC,析构函数完成释放DC,在整个窗口上绘图 CMetaFileDC:图元文件设备描述环境类 创建:CMetaFileDC dc; dc.Create(); 接下来用一般dc的绘图操作,绘图的内容均会保存至图元文件中; HMETAFILE m_hMetaFile=dc.Close();//图元文件赋予数据成员显示图元文件:用一般dc的PlayMetaFile(m_hMetaFile)显示图元文件 窗口销毁时删除图元文件 SDK函数::DeleteMetaFile(m_hMetaFile) 五、OnDraw函数、OnCreate函数 OnDraw函数:窗口重绘的时候被框架类FrameWnd调用,响应WM_PAINT消息。 OnCreate函数:窗口建立的时候调用的函数,响应WM_CREATE消息。

EXCEL函数表(最全的函数大全)

函数大全一、数据库函数(13条) 二、日期与时间函数(20条) 三、外部函数(2条) 四、工程函数(39条) 五、财务函数(52条)

六、信息函数(9条) 七、逻辑运算符(6条) 八、查找和引用函数(17条) 九、数学和三角函数(60条)

十、统计函数(80条)

十一、文本和数据函数(28条)

一、数据库函数(13条) 1.DAVERAGE 【用途】返回数据库或数据清单中满足指定条件的列中数值的平均值。 【语法】DAVERAGE(database,field,criteria) 【参数】Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。 2.DCOUNT 【用途】返回数据库或数据清单的指定字段中,满足给定条件并且包含数字的单元格数目。 【语法】DCOUNT(database,field,criteria) 【参数】Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。 3.DCOUNTA 【用途】返回数据库或数据清单指定字段中满足给定条件的非空单元格数目。 【语法】DCOUNTA(database,field,criteria) 【参数】Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。 4.DGET 【用途】从数据清单或数据库中提取符合指定条件的单个值。 【语法】DGET(database,field,criteria) 【参数】Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。 5.DMAX 【用途】返回数据清单或数据库的指定列中,满足给定条件单元格中的最大数值。 【语法】DMAX(database,field,criteria) 【参数】Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。 6.DMIN 【用途】返回数据清单或数据库的指定列中满足给定条件的单元格中的最小数字。 【语法】DMIN(database,field,criteria) 【参数】Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。 7.DPRODUCT 【用途】返回数据清单或数据库的指定列中,满足给定条件单元格中数值乘积。 【语法】DPRODUCT(database,field,criteria) 【参数】同上

CRichEditCtrl

CRichEditCtrl MFC Library Reference Using CRichEditCtrl(https://www.sodocs.net/doc/ab15887260.html,/tie/7576199.html)rich edit控件是用户能够输入和编辑文本的窗口。文本能被指定字符和段落格式,并且也能包含嵌入式OLE对象。rich edit 控件在MFC中通过CRichEditCtrl类描绘。关于哪些你想知道更多?RichEdit控件概述 如果你在对话框中使用rich edit控件(不管你的程序是SDI,MDI,还是基本对话框),你必须在对话框显示之前调用AfxInitRichEdit一次。调用此函数的典型位置 在你的程序的InitInstance成员函数中。你不必每次显示对话框时调用它,仅仅第一次就可以了。如果你使用CRichEditView你不必调用 AfxInitRichEdit.Rich edit控件(CRichEditCtrl)为格式化文本提供程序接口。然而,一个程序必须实现任一用户接口组件,这个组件对于用户格式化操作可用是必要 的。那就是,Rich edit控件支持选定文本的字符或段落属性的改变。字符属性

的一些例子就是黑粗体,斜体,字体系列,和点大小。段落属性的例子如对齐,页边空白,和移字键 (英文原文:tab stops.表示在rich edit中按下tab键光标会移动一段距离)。然而,这是给你提供的用户接口,不管那是一个工具条按钮,菜单项,或是一个格式化字符对话框。也有函数对目 前选择查询richedit控件。使用这些函数显示当前属性设置,比如,设置一个选定标记在用户接口上,如果当前选择是黑粗体字符格式属性。参见CharacterFomatting和paragraph formatting查看更多字符段落格式化信息。rich edit控件支持几乎所有多行编辑控件( multiline edit controls)的操作和通知消息。因此,使用EDIT控件的应用程序很容易的变换为使用RICH EDIT控件。附加的消息和通知(notifications)能使程序访问richedit的其它特性。参看CEdit查看编辑控件消息。与rich edit控件有关的类 CRichEditView, CRichEditDoc, 和CRichEditCntrItem类提供在MFC的文档/视图结构环境内的RICH EDIT控件的功能。CRichEditView保持着文本和文本的格式化特性。CRichEditDoc保持着视图中OLE客户项的序列。CRichEditCntrItem提供对OLE客户项的container-side

EXCEL的函数大全(完整版)

实用EXCE的函数 1.ADDRESS 用途:以文字形式返回对工作簿中某一单元格的引用。 语法:ADDRESS(row_num,column_num,abs_num,a1,sheet_text) 参数:Row_num是单元格引用中使用的行号;Column_num是单元格引用中使用的列 标;Abs_num指明返回的引用类型(1或省略为绝对引用,2绝对行号、相对列标,3相对行号、绝对列标,4是相对引用);A1是一个逻辑值,它用来指明是以A1或R1C1返回引用样式。如果A1为TRUE或省略,函数ADDRESS返回A1样式的引用;如果A1为FALSE,函数ADDRESS 返回R1C1样式的引用。Sheet_text为一文本,指明作为外部引用的工作表的名称,如果省略sheet_text,则不使用任何工作表的名称。 实例:公式“=ADDRESS(1,4,4,1)”返回D1。 2.AREAS 用途:返回引用中包含的区域个数。 语法:AREAS(reference)。 参数:Reference是对某一单元格或单元格区域的引用,也可以引用多个区域。 注意:如果需要将几个引用指定为一个参数,则必须用括号括起来,以免Excel将逗号作为参数间的分隔符。 实例:公式“=AREAS(a2:b4)”返回1,=AREAS((A1:A3,A4:A6,B4:B7,A16:A18))返回4。 3.CHOOSE 用途:可以根据给定的索引值,从多达29个待选参数中选出相应的值或操作。 语法:CHOOSE(index_num,value1,value2,...)。 参数:Index_num是用来指明待选参数序号的值,它必须是1到29之间的数字、或者是包含数字1到29的公式或单元格引用;value1,value2,...为1到29个数值参数,可以是数字、单元格,已定义的名称、公式、函数或文本。 实例:公式“=CHOOSE(2,"电脑","爱好者")返回“爱好者”。公式“=SUM(A1:CHOOSE(3,A10,A20,A30))”与公式“=SUM(A1:A30)”等价(因为CHOOSE(3,A10,A20,A30)返回A30)。 4.COLUMN

《网络程序设计》复习题

1、什么叫套接字?套接字按通信性质可以分为哪两类? 2、理解线程的创建与使用方法,并能应用到程序设计中。 3、异构环境下的网络程序设计需要考虑哪些问题? 4、为什么在数据结构struct sockaddr_in中,成员变量sin_addr和sin_port需要转换为网络字节顺序,而sin_family不需要呢? 5、从网络编程的角度来简述和比较IP地址和端口的作用。 6、为什么网络编程时需要考虑字节顺序问题? 7、WinSock编程中需要哪些文件? 8、UDP程序的工作模型隐含着通信标识五元组的建立过程。这五元组在UDP的客户与服务端是由哪些函数分别确定的? 9、什么是阻塞与非阻塞通信?请解释两者的区别。 10、简述各种类型数据的发送与接收处理的方法。 11、简述基于UDP的客户机/服务器端socket编程流程。 12、什么是通信三元组和五元组?三元组和五元组每个元素在网络连接中起到什么作用? 13、为什么服务端在TCP通信过程中需要调用bind( )函数而客户端不需要?为什么客户机通常不需要绑定自己的端口号? 14、简述套接字Select模型原理,以及select模型的优势和不足。 15、简述阻塞模式服务器和客户端工作流程,以及阻塞模式套接字的优势和不足。 16、在实际应用中,很多TCP服务器程序在非正常退出时,如果立即重启服务器进程则会发生绑定服务器端口失败的错误,从而无法启动服务器进程,但等待一段时间后就可以了。为什么会发生这种情况呢?如何解决这个问题(或采取什么措施可以立即重启服务器进程)?(要求掌握setsockopt()函数的用法) 17、TCP程序的工作模型隐含着通信标识五元组的建立过程。这五元组在TCP的客户与服务端是由哪些函数分别确定的? 18、accept( )为什么要返回一个套接口?或者说,为什么要为每一个连接创建一个套接口来处理?UDP 服务器端为什么不需要多个套接口? 19、理解生产者-消费者模型,理解线程的同步与互斥方法(event和critical-section),并能应用到程序设计中。 20、采用阻塞式I/O模型时,套接字函数recv()的返回值有哪几种?分别对应什么情况? 21、closesocket()函数和shutdown()函数有何差别? 22、什么是TCP的三次握手机制?为什么要使用TCP的三次握手机制? 23、服务器端并发的两种模型及编程实现。 考试形式:闭卷 考试时间:120分钟 考试题型:选择题(2’×10=20’)、简答题(10’×6=60’)、程序设计题(20’)

Excel常用电子表格公式大全【汇总篇】

Excel 常用电子表格公式大全【汇总篇】 篇一:Excel 常用电子表格公式汇总 Excel 常用电子表格公式汇总 1、查找重复内容公式:=IF(COUNTIF(A:A,A2)>1,"重复","")。 2、用出生年月来计算年龄公式: =TRUNC((DAYS360(H6,"2009/8/30",FALSE))/360,0)。 3、从输入的 18 位身份证号的出生年月计算公式: =CONCATENATE(MID(E2,7,4),"/",MID(E2,11,2),"/",MID(E2,13,2))。 4、从输入的身份证号码内让系统自动提取性别,可以输入以下公式: =IF(LEN(C2)=15,IF(MOD(MID(C2,15,1),2)=1," 男 "," 女 "),IF(MOD(MID(C2,17,1),2)=1," 男 "," 女 ")) 公式内的“C2”代表的是输入身份证号码的单元格。 5、求和: =SUM(K2:K56)——对 K2 到 K56 这一区域进行求和; 6、平均数: =AVERAGE(K2:K56)——对 K2 K56 这一区域求平均数; 7、排名: =RANK(K2,K$2:K$56)——对 55 名学生的成绩进行排名; 8、等级: =IF(K2>=85,"优",IF(K2>=74,"良",IF(K2>=60,"及格","不及格"))) 9、 学期总评: =K2*0.3+M2*0.3+N2*0.4 ——假设 K 列、 M 列和 N 列分别存放着学生的“平 时总评”、“期中”、“期末”三项成绩; 10、最高分: =MAX(K2:K56) ——求 K2 到 K56 区域(55 名学生)的最高分; 11、最低分: =MIN(K2:K56) ——求 K2 到 K56 区域(55 名学生)的最低分; 12、分数段人数统计: (1) =COUNTIF(K2:K56,"100") ——求 K2 到 K56 区域 100 分的人数;假设把结果存放于 K57 单元格; (2)=COUNTIF(K2:K56,">=95")-K57 ——求 K2 到 K56 区域 95~99.5 分的人数;假设把结 果存放于 K58 单元格; (3)=COUNTIF(K2:K56,">=90")-SUM(K57:K58)——求 K2 到 K56 区域 90~94.5 分的人数; 假设把结果存放于 K59 单元格; (4) =COUNTIF(K2:K56,">=85")-SUM(K57:K59)——求 K2 到 K56 区域 85~89.5 分的人数; 假设把结果存放于 K60 单元格; (5) =COUNTIF(K2:K56,">=70")-SUM(K57:K60)——求 K2 到 K56 区域 70~84.5 分的人数; 假设把结果存放于 K61 单元格; (6) =COUNTIF(K2:K56,">=60")-SUM(K57:K61)——求 K2 到 K56 区域 60~69.5 分的人数; 假设把结果存放于 K62 单元格; (7) =COUNTIF(K2:K56," 说明:COUNTIF 函数也可计算某一区域男、女生人数。 如:=COUNTIF(C2:C351,"男") ——求 C2 到 C351 区域(共 350 人)男性人数; 1 / 10

成语之最 (大全版)

成语之最 最差的座位——如坐针毡最能的小偷——偷天换日 最窄的道路——羊肠小道最大的手掌——一手遮天 最好的衣服——天衣无缝最荒的地方——不毛之地 最甜的炮弹——糖衣炮弹最大的肚子——包罗万象 最美的建筑——鬼斧神工最大的改革——翻天覆地 最牢的头发——一发千钧最差的工事——不攻自破 最轻的拷打——不痛不痒最笨的盗贼——掩耳盗铃 最遥远的地方——天涯海角最悬殊的区别——天渊之别 最反常的气候——晴天霹雳最宽阔的胸怀——虚怀若谷 最昂贵的稿费——一字千金最绝望的前途——山穷水尽 最高的巨人——顶天立地最难做的饭——无米之炊 最长的寿命——万寿无疆最有学问的人——博古通今 最长的腿——一步登天最快的速度——风驰电掣 最吝啬的人——一毛不拔最艰难的争辩——理屈词穷 最快的流水——一泻千里最高的气——气冲霄汉 最怕冷的人——不寒而栗最宽阔的胸——怀虚怀若谷 最大的眼——放眼世界最大的嘴——气吞山河 最大的差别——天壤之别最长的日子——天长地久 最大的被子——铺天盖地最大的步伐——一步登天 最大的浪费——挥金如土最本分的人——安份守己 最好的窝——安乐窝最黑的时候——暗无天日 最无用的做法——捕风捉影最厉害的举重运动员——拔山举鼎最成功的地方——不败之地最好的搬迁——不次之迁 最坏的结局——不得善终最有效的禁令——不敢越雷池一步最深的缘分——不解之缘最荒凉的草原——不牧之地 最安静的时候——不声不响最没吃的地方——不食之地 最可笑的绝食——不食周粟最差劲的买卖——不惜工本 最坏的后代——不肖子孙最肮脏的财产——不义之财 最大的抄袭——不易一字最难治的病——不治之症 最差的证据——不足为据最佳的配对——才子佳人 最悲惨的世界——惨不忍睹最困难的生意——惨淡经营 最残酷的心——豺狐之心最可怕的吻——豺狼之吻 最长的议论文——长篇大论最长的夜晚——长夜难明 最繁华的街道——车水马龙最好的女婿——乘龙佳婿 最贪吃的人——吃不了兜着走最红的心——赤子之心 最激烈的辩论——唇枪舌剑最荒凉的地方——寸草不生 最有用的木材——栋梁之材最没价值的东西——分文不值 最有效的讥讽——讽一劝百最喜欢说别人好话——逢人说项最稀罕的东西——凤毛麟角最大的福——福如东海 最有福的人——福星高照最好的副业门经——狗拿耗子 最精湛的技术——鬼斧神工最成功的外科手术——狗尾续貂

4:一个经典的多线程同步问题汇总

一个经典的多线程同步问题 程序描述: 主线程启动10个子线程并将表示子线程序号的变量地址作为参数传递给子线程。子线程接收参数 -> sleep(50) -> 全局变量++ -> sleep(0) -> 输出参数和全局变量。 要求: 1.子线程输出的线程序号不能重复。 2.全局变量的输出必须递增。 下面画了个简单的示意图: 分析下这个问题的考察点,主要考察点有二个: 1.主线程创建子线程并传入一个指向变量地址的指针作参数,由于线程启动须要花费一定的时间,所以在子线程根据这个指针访问并保存数据前,主线程应等待子线程保存完毕后才能改动该参数并启动下一个线程。这涉及到主线程与子线程之间的同步。 2.子线程之间会互斥的改动和输出全局变量。要求全局变量的输出必须递增。这涉及到各子线程间的互斥。 下面列出这个程序的基本框架,可以在此代码基础上进行修改和验证。 //经典线程同步互斥问题 #include #include #include long g_nNum; //全局资源 unsigned int__stdcall Fun(void *pPM); //线程函数 const int THREAD_NUM = 10; //子线程个数 int main() { g_nNum = 0;

HANDLE handle[THREAD_NUM]; int i = 0; while (i < THREAD_NUM) { handle[i] = (HANDLE)_beginthreadex(NULL, 0, Fun, &i, 0, NULL); i++;//等子线程接收到参数时主线程可能改变了这个i的值} //保证子线程已全部运行结束 WaitForMultipleObjects(THREAD_NUM, handle, TRUE, INFINITE); return 0; } unsigned int__stdcall Fun(void *pPM) { //由于创建线程是要一定的开销的,所以新线程并不能第一时间执行到这来int nThreadNum = *(int *)pPM; //子线程获取参数 Sleep(50);//some work should to do g_nNum++; //处理全局资源 Sleep(0);//some work should to do printf("线程编号为%d 全局资源值为%d\n", nThreadNum, g_nNum); return 0; } 运行结果:

电子表格常用函数公式

电子表格常用函数公式 1.去掉最高最低分函数公式: =SUM(所求单元格…注:可选中拖动?)—MAX(所选单元格…注:可选中拖动?)—MIN(所求单元格…注:可选中拖动?) (说明:“SUM”是求和函数,“MAX”表示最大值,“MIN”表示最小值。)2.去掉多个最高分和多个最低分函数公式: =SUM(所求单元格)—large(所求单元格,1)—large(所求单元格,2) —large(所求单元格,3)—small(所求单元格,1) —small(所求单元格,2) —small(所求单元格,3) (说明:数字123分别表示第一大第二大第三大和第一小第二小第三小,依次类推) 3.计数函数公式: count 4.求及格人数函数公式:(”>=60”用英文输入法) =countif(所求单元格,”>=60”) 5.求不及格人数函数公式:(”<60”用英文输入法) =countif(所求单元格,”<60”) 6.求分数段函数公式:(“所求单元格”后的内容用英文输入法) 90以上:=countif(所求单元格,”>=90”) 80——89:=countif(所求单元格,”>=80”)—countif(所求单元格,”<=90”) 70——79:=countif(所求单元格,”>=70”)—countif(所求单元

格,”<=80”) 60——69:=countif(所求单元格,”>=60”)—countif(所求单元格,”<=70”) 50——59:=countif(所求单元格,”>=50”)—countif(所求单元格,”<=60”) 49分以下: =countif(所求单元格,”<=49”) 7.判断函数公式: =if(B2,>=60,”及格”,”不及格”) (说明:“B2”是要判断的目标值,即单元格) 8.数据采集函数公式: =vlookup(A2,成绩统计表,2,FALSE) (说明:“成绩统计表”选中原表拖动,“2”表示采集的列数) 公式是单个或多个函数的结合运用。 AND “与”运算,返回逻辑值,仅当有参数的结果均为逻辑“真(TRUE)”时返回逻辑“真(TRUE)”,反之返回逻辑“假(FALSE)”。条件判断 AVERAGE 求出所有参数的算术平均值。数据计算 COLUMN 显示所引用单元格的列标号值。显示位置 CONCATENATE 将多个字符文本或单元格中的数据连接在一起,显示在一个单元格中。字符合并 COUNTIF 统计某个单元格区域中符合指定条件的单元格数目。条件统计 DATE 给出指定数值的日期。显示日期

数据库常用函数

数据库常用函数

一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份和还原 备份:exp dsscount/sa@dsscount owner=dsscount file=C:\dsscount_data_backup\dsscount.dmp log=C:\dsscount_data_backup\outputa.log 还原:imp dsscount/sa@dsscount file=C:\dsscount_data_backup\dsscount.dmp full=y ignore=y log=C:\dsscount_data_backup\dsscount.log statistics=none 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) CREATE TABLE ceshi(id INT not null identity(1,1) PRIMARY KEY,NAME VARCHAR(50),age INT) id为主键,不为空,自增长 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition only 5、说明:删除新表 drop table tabname 6、说明:增加一个列 Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 7、说明:添加主键: Alter table tabname add primary key(col) 说明:删除主键: Alter table tabname drop primary key(col) 8、说明:创建索引:create [unique] index idxname on tabname(col….) 删除索引:drop index idxname 注:索引是不可更改的,想更改必须删除重新建。 9、说明:创建视图:create view viewname as select statement 删除视图:drop view viewname 10、说明:几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围

史上最全的高考成语大全一

史上最全的高考成语大全 夫妻类成语 白头偕老:夫妻和睦生活一直到老(偕:共同)。 恩断义绝:恩爱、情义断绝。多指夫妻间感情破裂,而致离异。 夫倡妇随:丈夫说什么,妻子都附和。形容夫妻和睦。 覆水难收:倒在地上的水难收回来。比喻事成定局,无法挽回。后来也用此表示夫妻关系已经断绝。举案齐眉:多形容夫妻相敬相爱,感情深厚。 男耕女织:男的耕种,女的纺织。形容夫妻辛勤劳动。 牛郎织女:喻指夫妻分离。 破镜重圆:比喻夫妻失散或决裂后重又团圆。 成语之最 1 胆子最大——(胆大包天) 2. 看得最远——(高瞻远瞩) 3. 身体最胖——(心宽体胖肥头大耳) 4. 力气最大——(力大如牛) 5. 行走最快——(健步如飞一日千里) 6. 才学最高——(才高八斗) 7. 能力最强——(气吞山河) 8. 胸怀最宽——(虚怀若谷) 9. 学识最广——(学富五车) 10. 挥霍最多——(穷奢极欲) 11. 考虑最密——(谨小慎微精打细算) 12. 文章最雅——(阳春白雪) 13. 根据最足——(铁证如山) 14. 时间最快——(白驹过隙) 15. 份量最重——(重如泰山) 16. 材料最长——(长篇累牍长篇大论) 17. 说话最多——(口若悬河滔滔不绝) 18. 写作最快——(一挥而就一气呵成) 19. 事最稳妥——(稳如泰山) 20. 性最刚直——(宁折不弯刚直不阿) 21. 胆子最小——(胆小如鼠) 22. 看得最近——(鼠目寸光) 23. 身体最瘦——(骨瘦如柴) 24. 漏洞最多——(千创百孔) 易混淆的成语 1、不三不四:在形容人时多指人的品行不正派。 不伦不类:在形容人时多指人的着装不得体。 2、鱼目混珠:比喻拿假的东西冒充真的东西。 鱼龙混杂:比喻坏人和好人混在一起。 3、洋洋大观:形容事物繁多、丰富多彩。 洋洋洒洒:形容文章或谈话内容丰富、连续不断。

CSerialPort类解析

CserialPort类的功能及成员函数介绍 CserialPort类是免费提供的串口类,Codeguru是一个非常不错的源代码网站CserialPort类支持线连接(非MODEM)的串口编程操作。 CserialPort类是基于多线程的,其工作流程如下:首先设置好串口参数,再开启串口检测工作线程,串口检测工作线程检测到串口接收到的数据、流控制事件或其他串口事件后,就以消息方式通知主程序,激发消息处理函数来进行数据处理,这是对接受数据而言的,发送数据可直接向串口发送。 介绍几个经常用到的函数: 1、串口初始化函数InitPort 这个函数是用来初始化串口的,即设置串口的通信参数:需要打开的串口号、波特率、奇偶校验方式、数据位、停止位,这里还可以用来进行事件的设定。如果串口初始化成功,就返回TRUE,若串口被其他设备占用、不存在或存在其他股占,就返回FALSE,编程者可以在这儿提示串口操作是否成功如果在当前主串口调用这个函数,那么pPortOwner可用this指针表示,串口号在函数中做了限制,只能用1,2,3和4四个串口号,而事实上在编程时可能用到更多串口号,可以通过通过注释掉本函数中“assert(portur>0&&portnr<5)”语句取消对串口号的限制。 if (m_ComPort[0].InitPort(this,1,9600,'N',8,1,EV_RXFLAG | EV_RXCHAR,512)) //portnr=1(2),baud=9600,parity='N',databits=8,stopsbits=1,

//dwCommEvents=EV_RXCHAR|EV_RXFLAG,nBufferSize=512 { m_ComPort[0].StartMonitoring(); //启动串口监视线程 SetTimer(1,1000,NULL); //设置定时器,1秒后发送数据} e lse { CString str; str.Format("COM1 没有发现,或被其它设备占用"); AfxMessageBox(str); } 2、启动串口通信监测线程函数StartMonitoring() 串口初始化成功后,就可以调用BOOL StartMonitoring()来启动串口检测线程,线程启动成功,返回TRUE。 BOOL CSerialPort::StartMonitoring() { if (!(m_Thread = AfxBeginThread(CommThread, this))) return FALSE; TRACE("Thread started\n"); return TRUE; } 注意这个函数一旦调用,就会建立一个线程,这个线程一直不会结束,调用StopMonitoring ()只是将这个线程挂起。 3、暂停或停止监测线程函数StopMonitoring() 该函数暂停或停止串口检测,要注意的是,调用该函数后,串口资源仍然被占用 // // Suspend the comm thread // BOOL CSerialPort::StopMonitoring() { TRACE("Thread suspended\n"); m_Thread->SuspendThread(); return TRUE; } 4、关闭串口函数ClosePort() 该函数功能是关闭串口,释放串口资源,调用该函数后,如果要继续使用串口,还需要调用InitPort()函数。 这里有一个问题,在以前的版本中,如果调用了StartMonitoring函数,关闭串口后,再打开就会出现问题,及网上所说的关闭死锁问题。找了大量资料后,

电子表格常用函数公式

电子表格常用函数公式 1、自动排序函数: =RANK(第1数坐标,$第1数纵坐标$横坐标:$最后数纵坐标$横坐标,升降序号1降0升) 例如:=RANK(X3,$X$3:$X$155,0) 说明:从X3 到X 155自动排序 2、多位数中间取部分连续数值: =MID(该多位数所在位置坐标,所取多位数的第一个数字的排列位数,所取数值的总个数) 例如:612730************在B4坐标位置,取中间出生年月日,共8位数 =MID(B4,7,8) =19820711 说明:B4指该数据的位置坐标,7指从第7位开始取值,8指一共取8个数字 3、若在所取的数值中间添加其他字样, 例如:612730************在B4坐标位置,取中间出生年、月、日,要求****年**月**日格式 =MID(B4,7,4)&〝年〞&MID(B4,11,2) &〝月〞& MID(B4,13,2) &〝月〞&

=1982年07月11日 说明:B4指该数据的位置坐标,7、11指开始取值的第一位数排序号,4、2指所取数值个数,引号必须是英文引号。 4、批量打印奖状。 第一步建立奖状模板:首先利用Word制作一个奖状模板并保存为“奖状.doc”,将其中班级、姓名、获奖类别先空出,确保打印输出后的格式与奖状纸相符(如图1所示)。 第二步用Excel建立获奖数据库:在Excel表格中输入获奖人以及获几等奖等相关信息并保存为“奖状数据.xls”,格式如图2所示。 第三步关联数据库与奖状:打开“奖状.doc”,依次选择视图→工具栏→邮件合并,在新出现的工具栏中选择“打开数据源”,并选择“奖状数据.xls”,打开后选择相应的工作簿,默认为sheet1,并按确定。将鼠标定位到需要插入班级的地方,单击“插入域”,在弹出的对话框中选择“班级”,并按“插入”。同样的方法完成姓名、项目、等第的插入。 第四步预览并打印:选择“查看合并数据”,然后用前后箭头就可以浏览合并数据后的效果,选择“合并到新文档”可以生成一个包含所有奖状的Word文档,这时就可以批量打印了。

16种常用数据分析方法66337

一、描述统计 描述性统计是指运用制表和分类,图形以及计筠概括性数据来描述数据的集中趋势、离散趋势、偏度、峰度。 1、缺失值填充:常用方法:剔除法、均值法、最小邻居法、比率回归法、决策树法。 2、正态性检验:很多统计方法都要求数值服从或近似服从正态分布,所以之前需要进行正态性检验。常用方法:非参数检验的K-量检验、P-P图、Q-Q图、W检验、动差法。 二、假设检验 1、参数检验 参数检验是在已知总体分布的条件下(一股要求总体服从正态分布)对一些主要的参数(如均值、百分数、方差、相关系数等)进行的检验。 1)U验使用条件:当样本含量n较大时,样本值符合正态分布 2)T检验使用条件:当样本含量n较小时,样本值符合正态分布 A 单样本t检验:推断该样本来自的总体均数μ与已知的某一总体均数μ0 (常为理论值或标准值)有无差别; B 配对样本t检验:当总体均数未知时,且两个样本可以配对,同对中的两者在可能会影响处理效果的各种条件方面扱为相似; C 两独立样本t检验:无法找到在各方面极为相似的两样本作配对比较时使用。 2、非参数检验 非参数检验则不考虑总体分布是否已知,常常也不是针对总体参数,而是针对总体的某些一股性假设(如总体分布的位罝是否相同,总体分布是否正态)进行检验。 适用情况:顺序类型的数据资料,这类数据的分布形态一般是未知的。

A 虽然是连续数据,但总体分布形态未知或者非正态; B 体分布虽然正态,数据也是连续类型,但样本容量极小,如10以下; 主要方法包括:卡方检验、秩和检验、二项检验、游程检验、K-量检验等。 三、信度分析 检査测量的可信度,例如调查问卷的真实性。 分类: 1、外在信度:不同时间测量时量表的一致性程度,常用方法重测信度 2、内在信度;每个量表是否测量到单一的概念,同时组成两表的内在体项一致性如 何,常用方法分半信度。 四、列联表分析 用于分析离散变量或定型变量之间是否存在相关。 对于二维表,可进行卡方检验,对于三维表,可作Mentel-Hanszel分层分析。列联表分析还包括配对计数资料的卡方检验、行列均为顺序变量的相关检验。 五、相关分析 研究现象之间是否存在某种依存关系,对具体有依存关系的现象探讨相关方向及相关程度。 1、单相关:两个因素之间的相关关系叫单相关,即研究时只涉及一个自变量和一个因变量; 2、复相关:三个或三个以上因素的相关关系叫复相关,即研究时涉及两个或两个以上的自变量和因变量相关; 3、偏相关:在某一现象与多种现象相关的场合,当假定其他变量不变时,其中两个变量之间的相关关系称为偏相关。 六、方差分析

形容强大的成语

形容强大的成语 形容强大的成语 1、兵多将广:兵将众多。形容军队人员多,兵力强大。 2、羽毛未丰:丰:丰满。指小鸟没长成,身上的毛还很稀疏。比喻年纪轻,经历少,不成熟或力量还不够强大。 3、战无不胜:形容强大无比,可以战胜一切。也比喻办任何事情都能成功。 4、貌似强大:表面好象强大,实际却很虚弱。 5、庞然大物:庞然:高大的样子。指高大笨重的东西。现也用来形容表面上很强大但实际上很虚弱的事物。 6、强弩之末:强弩所发的矢,飞行已达末程。比喻强大的力量已经衰弱,起不了什么作用。 7、无坚不摧:形容力量非常强大,没有什么坚固的东西不能摧毁。 8、如临大敌:临:面临。好象面对着强大的敌人。形容把本来不是很紧迫的形势看得十分严重。 9、不屈不挠:屈:屈服;挠:弯曲。比喻在压力和困难面前不屈服,表现十分顽强。 10、所向无敌:敌:抵挡。力量所指向的地方,谁也抵挡不住。形容力量强大,无往不胜。 11、钢筋铁骨:筋骨象钢铁打铸的一般。形容身体健壮有力或意志坚强不屈。 12、外柔内刚:柔:柔弱;内:内心。外表柔和而内心刚正。 13、席卷天下:形容力量强大,控制了全国。 14、弘毅宽厚:弘毅:意志坚强,志向远大。志向远大而待人宽大厚道。 15、养虺成蛇:比喻纵容敌人,听任其强大起来。 16、伏虎降龙:伏:屈服;降:用用威力使屈服。用威力使猛虎和恶龙屈服。形容力量强大,能战胜一切敌人和困难。 17、倚强凌弱:倚:仗,凭借;凌:欺压。仗着自己强大就欺侮弱者。

18、羽毛丰满:小鸟的羽毛已经长全。比喻已经成熟或实力已强大。 19、攻无不克:克:攻下。没有攻占不下来的。形容力量无比强大。 20、富国强兵:使国家富足,兵力强大。 21、以强凌弱:仗着自己强大就欺侮弱者。 22、两虎相斗:比喻力量强大的双方相搏斗。 23、众志成城:万众一心,象坚固的城墙一样不可摧毁。比喻团结一致,力量无比强大。 24、投鞭断流:把所有的马鞭投到江里,就能截断水流。比喻人马众多,兵力强大。 25、回山倒海:形容力量和气势极强大,能压倒一切。 26、铮铮铁骨:比喻人的刚正不阿,坚强不屈的骨气。 27、堂堂正正:堂堂:盛大的样子;正正:整齐的样子。原形容强大整齐的样子,现也形容光明正大。也形容身材威武,仪表出众。 28、恃强凌弱:凌:欺凌。依仗强大,欺侮弱小。 29、傲然挺立:傲然:坚强不屈的样子。挺立:像山峰一样高高地耸立。形容坚强而不可动摇。 30、繁荣富强:形容各项事业蓬勃发展,日益富足强大。 31、攻无不取,战无不胜:没有攻占不下来的。形容力量无比强大。 32、羊质虎皮:质:本性。羊虽然披上虎皮,还是见到草就喜欢,碰到豺狼就怕得发抖,它的本性没有变。比喻外表装作强大而实际上很胆小。 33、百折不挠:折:挫折;挠:弯曲。比喻意志坚强,无论受到多少次挫折,毫不动摇退缩。 34、虎入羊群:老虎跑进羊群。比喻强大者冲入柔弱者中间任意砍杀。 35、泰山压卵:泰山压在蛋上。比喻力量相差极大,强大的一方必然压倒弱小的一方。 36、坚韧不拔:坚:坚定;韧:柔韧。形容意志坚定,不可动摇。 37、虚张声势:张:铺张,夸大。假装出强大的气势。指假造声势,借以吓人。 38、摧枯拉朽:枯、朽:枯草朽木。摧折枯朽的草木。形容轻而易举。

C多线程编程实例实战

C#多线程编程实例实战 问题的提出 所谓单个写入程序/ 多个阅读程序的线程同步问题,是指任意数量的线程访问共享资源时,写入程序(线程)需要修改共享资源,而阅读程序(线程)需要读取数据。在这个同步问题中,很容易得到下面二个要求: 1 )当一个线程正在写入数据时,其他线程不能写,也不能读。 2 )当一个线程正在读入数据时,其他线程不能写,但能够读。在数据库应 用程序环境中经常遇到这样的问题。比如说,有n 个最终 用户,他们都要同时访问同一个数据库。其中有m个用户要将数据存入数据库,n-m 个用户要读取数据库中的记录。 很显然,在这个环境中,我们不能让两个或两个以上的用户同时更新同一条记录,如果两个或两个以上的用户都试图同时修改同一记录,那么该记录中的信息就会被破坏。 我们也不让一个用户更新数据库记录的同时,让另一用户读取记录的内容。因为读取的记录很有可能同时包含了更新和没有更新的信息,也就是说这条记录是无效的记录。 实现分析 规定任一线程要对资源进行写或读操作前必须申请锁。根据操作的不同,分为阅读锁和写入锁,操作完成之后应释放相应的锁。将单个写入程序/ 多个阅读程序的要求改变一下,可以得到如下的形式: 一个线程申请阅读锁的成功条件是:当前没有活动的写入线程。 一个线程申请写入锁的成功条件是:当前没有任何活动(对锁而言)

的线程 因此,为了标志是否有活动的线程,以及是写入还是阅读线程,引入一个变量m_nActive ,如果m_nActive > 0 ,则表示当前活动阅读线程的数目,如果 m_nActive=0 ,则表示没有任何活动线程,m_nActive <0 ,表示当前有写入线程在活动,注意m_nActive<0 ,时只能取-1 的值,因为只允许有一个写入线程活动。 为了判断当前活动线程拥有的锁的类型,我们采用了线程局部存储技术(请参阅其它参考书籍) ,将线程与特殊标志位关联起来。 申请阅读锁的函数原型为:public void AcquireReaderLock( int millisecondsTimeout ) ,其中的参数为线程等待调度的时间。函数定义如下:public void AcquireReaderLock( int millisecondsTimeout ) { // m_mutext 很快可以得到,以便进入临界区m_mutex.WaitOne( ); // 是否有写入线程存在 bool bExistingWriter = ( m_nActive < 0 ); if( bExistingWriter ) { // 等待阅读线程数目加1, 当有锁释放时,根据此数目来调度线程 m_nWaitingReaders++; } else { // 当前活动线程加1 m_nActive++; } m_mutex.ReleaseMutex();

相关主题