易语言位图操作类模块源码
系统结构:通过句柄取图标,取文件图标,初始化颜色表,CaptureDC,GetBitsAddress,GetBitsSize,BytesPerLine,Create,SetPixelColor,GetBitmapInfoAddress,GetWidth,GetHeight,WIDTHBYTES,GetColorTableAddress,GetBitCount,BMP文件头转字节集,BMP信息头转字节集,CNoColorTable,GetColorTableSize,NumDIBColorEntries,Write,取文件图标_,取设备场景_,CreateSolidBrush,FillRect,绘制图标或鼠标指针_,创建设备场景位图_,创建设备场景句柄_,选择场景对象_,ReleaseDC,删除设备场景,删除对象_,绘制图标_,GetCurrentProcess,lstrcpyn,ReadProcessMemory,WriteProcessMemory,拷贝内存_,CreateDIBSection,BitBlt,GdiFlush,SendMessage,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ 通过句柄取图标
| |
| |------ 取文件图标
| |
| |
======位图操作类
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 初始化颜色表
| |
| |------ CaptureDC
| |
| |------ GetBitsAddress
| |
| |------ GetBitsSize
| |
| |------ BytesPerLine
| |
| |------ Create
| |
| |------ SetPixelColor
| |
| |------ GetBitmapInfoAddress
| |
| |------ GetWidth
| |
| |------ GetHeight
| |
| |------ WIDTHBYTES
| |
| |------ GetColorTableAddress
| |
| |------ GetBitCount
| |
| |------ BMP文件头转字节集
| |
| |------ BMP信息头转字节集
| |
| |------ CNoColorTable
| |
| |------ GetColorTableSize
| |
| |------ NumDIBColorEntries
| |
| |------ Write
| |
| |
======调用的Dll
| |
| |---[dll]------ 取文件图标_
| |
| |---[dll]------ 取设备场景_
| |
| |---[dll]------ CreateSolidBrush
| |
| |---[dll]------ FillRect
| |
| |---[dll]------ 绘制图标或鼠标指针_
| |
| |---[dll]------ 创建设备场景位图_
| |
| |---[dll]------ 创建设备场景句柄_
| |
| |---[dll]------ 选择场景对象_
| |
| |---[dll]------ ReleaseDC
| |
| |---[dll]------ 删除设备场景
| |
| |---[dll]------ 删除对象_
| |
| |---[dll]------ 绘制图标_
| |
| |---[dll]------ GetCurrentProcess
| |
| |---[dll]------ lstrcpyn
| |
| |---[dll]------ ReadProcessMemory
| |
| |---[dll]------ WriteProcessMemory
| |
| |---[dll]------ 拷贝内存_
| |
| |---[dll]------ CreateDIBSection
| |
| |---[dll]------ BitBlt
| |
| |---[dll]------ GdiFlush
| |
| |---[dll]------ SendMessage
调用的DLL命令:
.DLL命令 取文件图标_, 整数型, "shell32.dll", "SHGetFileInfoA"
.参数 pszPath, 文本型
.参数 dwFileAttributes, 整数型
.参数 psfi, SHFILEINFO
.参数 cbFileInfo, 整数型
.参数 uFlags, 整数型
.DLL命令 取设备场景_, 整数型, "user32", "GetDC"
.参数 hwnd
.DLL命令 CreateSolidBrush, 整数型, "gdi32.dll", "CreateSolidBrush"
.参数 crColor, 整数型
.DLL命令 FillRect, 整数型, "user32.dll", "FillRect"
.参数 hdc, 整数型
.参数 lpRect, RECT, 传址
.参数 hBrush, 整数型
.DLL命令 绘制图标或鼠标指针_, 整数型, "user32.dll", "DrawIconEx", , 描绘一个图标或鼠标指针
.参数 hdc
.参数 xLeft
.参数 yTop
.参数 hIcon
.参数 cxWidth
.参数 cyWidth
.参数 istepIfAniCur
.参数 hbrFlickerFreeDraw
.参数 diFlags
.DLL命令 创建设备场景位图_, 整数型, "gdi32.dll", "CreateCompatibleBitmap", , 执行成功返回位图句柄,零表示失败
.参数 hdc, 整数型, , 设备场景句柄
.参数 nWidth, 整数型, , 位图宽度
.参数 nHeight, 整数型, , 位图高度
.DLL命令 创建设备场景句柄_, 整数型, "gdi32.dll", "CreateCompatibleDC", , 新设备场景句柄,若出错则为零
.参数 hdc, 整数型, , hdc,源设备场景句柄
.DLL命令 选择场景对象_, 整数型, "gdi32.dll", "SelectObject", , 每个设备场景都可能有选入其中的图形对象。其中包括位图、刷子、字体、画笔以及区域等等。一次选入设备场景的只能有一个对象。选定的对象会在设备场景的绘图操作中使用。例如,当前选定的画笔决定了在设备场景中描绘的线段颜色及样式,与以前选入设备场景的相同hObject类型的一个对象的句柄,零表示出错。如选定的对象是一个区域(Region),结果就是下列常数之一:SIMPLEREGION, COMPLEXREGION 或 NULLREGION 对区域进行描述, GDI_ERROR 表示出错
.参数 hdc, 整数型, , 一个设备场景的句柄
.参数 hObject, 整数型, , 一个画笔、位图、刷子、字体或区域的句柄
.DLL命令 ReleaseDC, 逻辑型, "user32.dll", "ReleaseDC"
.参数 hwnd, 整数型
.参数 hDC, 整数型
.DLL命令 删除设备场景, 整数型, "gdi32.dll", "DeleteDC", , 删除专用设备场景或信息场景,释放所有相关窗口资源。不要将它用于GetDC函数取回的设备场景,执行成功则为非零,失败则为零
.参数 hdc, 整数型, , 将要删除的设备场景
.DLL命令 删除对象_, 整数型, "gdi32.dll", "DeleteObject", , 用这个函数删除GDI对象,比如画笔、刷子、字体、位图、区域以及调色板等等。对象使用的所有系统资源都会被释放,非零表示成功,零表示失败
.参数 hObject, 整数型, , 一个GDI对象的句柄
.DLL命令 绘制图标_, 整数型, "user32", "DrawIcon"
.参数 hDC, 整数型
.参数 x, 整数型
.参数 y, 整数型
.参数 hIcon, 整数型
.DLL命令 GetCurrentProcess, 整数型, "kernel32.dll", "GetCurrentProcess", , 获取当前进程句柄
.DLL命令 lstrcpyn, 整数型, "kernel32.dll", "lstrcpyn", , 取变量地址,返回内存地址(此API还有其他作用)
.参数 lpString1, 字节集, 传址, 欲取其指针的变量,一定要传址
.参数 lpString2, 字节集, 传址, 欲取其指针的变量一定要传址.重复一次
.参数 iMaxLength, 整数型, , 这里无用,给0
.DLL命令 ReadProcessMemory, 整数型, "kernel32.dll", "ReadProcessMemory", , 读内存数据
.参数 hProcess, 整数型, , 进程句柄
.参数 lpBaseAddress, 整数型, , 内存地址
.参数 lpBuffer, 字节集, 传址, 数据指针
.参数 nSize, 整数型, , 长度
.参数 lpNumberOfBytesWritten, 整数型, , 实际长度
.DLL命令 WriteProcessMemory, 整数型, "kernel32.dll", "WriteProcessMemory", , 写内存数据
.参数 hProcess, 整数型, , 进程句柄
.参数 pBaseAddress, 整数型, , 内存地址
.参数 lpBuffer, 字节集, 传址, 数据指针
.参数 nSize, 整数型, , 长度
.参数 lpNumberOfBytesWritten, 整数型, , 实际写出长度
.DLL命令 拷贝内存_, , "Kernel32.dll", "RtlMoveMemory", , 复制内存(无返回值)
.参数 Destination, 整数型, , 目的指针
.参数 Source, 整数型, , 源指针
.参数 Length, 整数型, , 复制长度
.DLL命令 CreateDIBSection, 整数型, "gdi32.dll", "CreateDIBSection"
.参数 hDC, 整数型
.参数 pBitmapInfo, 字节集, 传址
.参数 un, 整数型
.参数 lplpVoid, 整数型, 传址
.参数 handle, 整数型
.参数 dw, 整数型
.DLL命令 BitBlt, 整数型, "gdi32.dll", "BitBlt"
.参数 hDestDC, 整数型
.参数 x, 整数型
.参数 y, 整数型
.参数 nWidth, 整数型
.参数 nHeight, 整数型
.参数 hSrcDC, 整数型
.参数 xSrc, 整数型
.参数 ySrc, 整数型
.参数 dwRop, 整数型
.DLL命令 GdiFlush, 整数型, "gdi32.dll", "GdiFlush", , 执行任何未决的绘图操作,如所有未决的绘图操作都成功完成,就返回TRUE(非零)。如任何一个操作失败,就返回零值
.DLL命令 SendMessage, 整数型, "user32.dll", "SendMessageA"
.参数 hwnd, 整数型
.参数 wMsg, 整数型
.参数 wParam, 整数型
.参数 lParam, 整数型
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言两个文件内存中通讯源码,子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错...
易语言易模块管理器Include目录源码,CopyTo_CreateProcessDebugInfo,CopyTo_CreateThreadDebugInfo,CopyTo_ExitThreadDebugInfo,CopyTo_ExitProcessDebugInfo,CopyTo_LoadDllDebugInfo,CopyTo_UnloadDllDebugInfo,CopyTo_ExceptionDebugInfo,Copy...
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错误信息,读入字节集,读入2M字节集,清除文件缓冲区,读入文本,写出文本,写文本行,读入一行,插入字节集,取文件号...
初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...