易语言API屏幕截图模块源码
系统结构:屏幕截图,创建空位图,扫描行对齐,位图信息头转字节集,取颜色表指针,取颜色表大小,取颜色点阵地址,取颜色点阵大小,取高度,取行字节数,初始化颜色表,取颜色表颜色个数,取位深度,EnumDisplaySettings,创建内存场景_,创建GDI对象_,取设备场景_,选入设备场景_,复制场景位图_,处理绘图操作_,创建GDI对象2_,删除对象_,删除设备场景_,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ 屏幕截图
| |
| |------ 创建空位图
| |
| |------ 扫描行对齐
| |
| |------ 位图信息头转字节集
| |
| |------ 取颜色表指针
| |
| |------ 取颜色表大小
| |
| |------ 取颜色点阵地址
| |
| |------ 取颜色点阵大小
| |
| |------ 取高度
| |
| |------ 取行字节数
| |
| |------ 初始化颜色表
| |
| |------ 取颜色表颜色个数
| |
| |------ 取位深度
| |
| |
======调用的Dll
| |
| |---[dll]------ EnumDisplaySettings
| |
| |---[dll]------ 创建内存场景_
| |
| |---[dll]------ 创建GDI对象_
| |
| |---[dll]------ 取设备场景_
| |
| |---[dll]------ 选入设备场景_
| |
| |---[dll]------ _取指针_字节集
| |
| |---[dll]------ _写内存5
| |
| |---[dll]------ 复制场景位图_
| |
| |---[dll]------ 处理绘图操作_
| |
| |---[dll]------ 创建GDI对象2_
| |
| |---[dll]------ 删除对象_
| |
| |---[dll]------ 删除设备场景_
调用的DLL命令:
.DLL命令 EnumDisplaySettings, 整数型, , "EnumDisplaySettingsA"
.参数 lpszDeviceName, 整数型
.参数 iModeNum, 整数型
.参数 lpDevMode, 短整数型, 传址
.DLL命令 创建内存场景_, 整数型, , "CreateCompatibleDC"
.参数 hdc, 整数型
.DLL命令 创建GDI对象_, 整数型, , "CreateDIBSection", , gdi32.dll创建一个DIBSection。这是一个GDI对象,可象一幅与设备有关位图那样使用。但是,它在内部作为一幅与设备无关位图保存 执行成功返回DIBSection位图的句柄,零表示失败。会设置GetLastError
.参数 设备场景句柄, 整数型, , 一个设备场景的句柄。如dw设为DIB_PAL_COLORS,那么DIB颜色表就会用来自逻辑调色板的颜色进行初始化
.参数 pBitmapInfo, BITMAPINFO, , BITMAPINFO,这个结构初始化成欲创建的那幅位图的配置数据
.参数 常数, 整数型, , 下述常数之一:;DIB_PAL_COLORS:BITMAPINFO包含了一个16位调色板索引的数组;DIB_RGB_COLORS:BITMAPINFO包含了一个颜色表,其中保存有32位颜色(RGBQUAD)
.参数 内存地址, 整数型, , 用于载入DIBSection数据区的内存地址
.参数 文件映射句柄, 整数型, , 指向一个文件映射对象的可选句柄,位图将在其中创建。如设为零,Windows会自动分配内存
.参数 偏移量, 整数型, , 如指定了句柄,就用这个参数指定位图数据在文件映射对象中的偏移量;
.DLL命令 取设备场景_, 整数型, , "GetDC", , 获取指定窗口的设备场景 指定窗口的设备场景句柄,出错则为0
.参数 hwnd, 整数型, , 将获取其设备场景的窗口的句柄。若为0,则要获取整个屏幕的DC;
.DLL命令 选入设备场景_, 整数型, , "SelectObject", , gdi32.dll每个设备场景都可能有选入其中的图形对象。其中包括位图、刷子、字体、画笔以及区域等等。一次选入设备场景的只能有一个对象。选定的对象会在设备场景的绘图操作中使用。例如,当前选定的画笔决定了在设备场景中描绘的线段颜色及样式 与以前选入设备场景的相同hObject类型的一个对象的句柄,零表示出错。如选定的对象是一个区域(Region),结果就是下列常数之一:SIMPLEREGION, ; COMPLEXREGION 或 NULLREGION 对区域进行描述, GDI_ERROR 表示出错
.参数 设备场景句柄, 整数型, , 一个设备场景的句柄
.参数 对象句柄, 整数型, , 一个画笔、位图、刷子、字体或区域的句柄;
.DLL命令 _取指针_字节集, 整数型, , "lstrcpyn"
.参数 目的指针, 字节集, 传址
.参数 源指针, 字节集, 传址
.参数 复制长度, 整数型, , 0
.DLL命令 _写内存5, 整数型, , "RtlMoveMemory", , kernel32.dll
.参数 pDestination, 整数型
.参数 pSource, 整数型
.参数 Length, 整数型
.DLL命令 复制场景位图_, 整数型, , "BitBlt", , gdi32.dll将一幅位图从一个设备场景复制到另一个。源和目标DC相互间必须兼容 非零表示成功,零表示失败。会设置GetLastError
.参数 目标设备场景, 整数型, , 目标设备场景
.参数 目标横坐标, 整数型, , 对目标DC中目标矩形左上角位置进行描述的那个点。用目标DC的逻辑坐标表示
.参数 目标纵坐标, 整数型, , 同上
.参数 传输图像宽度, 整数型, , 欲传输图象的宽度和高度
.参数 传输图像高度, 整数型, , 同上
.参数 源设备场景, 整数型, , 源设备场景。如光栅运算未指定源,则应设为0
.参数 源横坐标, 整数型, , 对源DC中源矩形左上角位置进行描述的那个点。用源DC的逻辑坐标表示
.参数 源纵坐标, 整数型, , 同上
.参数 光栅运算方式, 整数型, , 传输过程要执行的光栅运算;
.DLL命令 处理绘图操作_, 整数型, , "GdiFlush", , gdi32.dll 执行任何未决的绘图操作,如所有未决的绘图操作都成功完成,就返回TRUE(非零)。如任何一个操作失败,就返回零值
.DLL命令 创建GDI对象2_, 整数型, , "CreateDIBSection", , gdi32.dll
.参数 设备场景句柄, 整数型
.参数 位图数据, 字节集, 传址
.参数 常数, 整数型
.参数 内存地址, 整数型, 传址
.参数 文件映射句柄, 整数型
.参数 偏移量, 整数型
.DLL命令 删除对象_, 整数型, , "DeleteObject", , gdi32.dll用这个函数删除GDI对象,比如画笔、刷子、字体、位图、区域以及调色板等等。对象使用的所有系统资源都会被释放 非零表示成功,零表示失败
.参数 对象句柄, 整数型, , 一个GDI对象的句柄;
.DLL命令 删除设备场景_, 整数型, , "DeleteDC", , gdi32.dll删除专用设备场景或信息场景,释放所有相关窗口资源。不要将它用于GetDC函数取回的设备场景,执行成功则为非零,失败则为零
.参数 hdc, , , 将要删除的设备场景
易语言VB2易V0009源码,转换VB函数,删除函数编辑框空行,删除编辑框空行,转换VB函数_2,转换VB常数,转换VB自定义数据类型,转换VB子程序,转换VB全局变量,转换VB局部变量,子程序1,转换VB函数2...
易语言-正文提取源码,正文提取,特殊字符过滤,取汉字个数_正则法,标准清除HTML标签,纯净清除HTML标签...
易语言SendInput源码,SendInput,模拟键盘_,模拟鼠标移动_,模拟鼠标单击_,SendUnicode,SendAnsi,SendKeyS,取变量地址_字节集型_,指针到短整数_,字节集到短整数_,AnsiToUnicode,模拟键盘动作_,模拟鼠标动作_,VkKeyScanW,GetKeyState,RtlInitAnsiString,RtlFreeU...
易语言SDK窗口源码,SDK窗口,WndProc,子程序_菜单初始化,HIWORD,LOWORD,子程序_处理命令消息,GetModuleHandle,LoadIcon,LoadCursor,GetStockObject,RegisterClass,MessageBox,CreateWindowEx,ShowWindow,UpdateWindow,GetMessage,TranslateMessage,DispatchMes...
易语言API创建暂停进程进行DLL注入源码,API创建暂停进程进行DLL注入,GetCmdLine,命令行缓冲区_,取文本内容长度_,CopyMemory,SN_CreateProcessA,SN_InjectDllA...
易语言api创建多层目录源码,api创建多层目录,api_创建多层目录...
易语言高斯算法源码,高斯算法...
易语言高斯赛德尔迭代法演示源码,高斯赛德尔迭代法演示,DBLX...
易语言雪花屏保源码,雪花屏保,Rnd,InitP,GetContrast,GetDC,GetPixel,SetPixel,ReleaseDC,InvalidateRect...