为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 易语言相关 > 易语言模块源码 正文

增强型特殊快照模块源码

三叶资源网 2017-11-03 16:41:46 易语言模块源码 1610 ℃ 0 评论

资源介绍:

增强型特殊快照模块源码例程程序调用API函数实现特殊快照效果。

点评:易语言增强型特殊快照模块源码可以截取dx游戏窗口和透明窗口。

资源作者:

易语言我吃了

资源界面:

.版本 2

.子程序 快照_特殊增强, 字节集, 公开, 能将Dx游戏窗口或者透明窗口的图像截取出来。※注:GIF输出最快,BMP最慢但质量最好,PNG较快质量也较好。
.参数 输出格式, 整数型, 可空, 1.BMP;2.JPG;3.GIF;4.TIFF;5.PNG,留空默认为BMP。
.参数 窗口句柄, 整数型, 可空
.参数 输出宽度, 整数型, 可空
.参数 输出高度, 整数型, 可空
.局部变量 n, 整数型
.局部变量 TempFormat, 整数型
.局部变量 Value, 整数型
.局部变量 TempGlobal_1, 整数型
.局部变量 TempGlobal_2, 整数型
.局部变量 Format, 整数型, , "0"
.局部变量 hGlobal, 整数型, , "0"
.局部变量 hThread, 整数型
.局部变量 hBitmap, 整数型
.局部变量 hScrDC, 整数型
.局部变量 hScrMemDC, 整数型
.局部变量 hWinBitmap, 整数型
.局部变量 hWinDC, 整数型
.局部变量 hWinMemDC, 整数型
.局部变量 RECT, 整数型, , "4"
.局部变量 Width, 整数型
.局部变量 Height, 整数型
.局部变量 DataStream, 对象
.局部变量 pStream, 整数型
.局部变量 Bitmap, 整数型
.局部变量 hMemData, 整数型
.局部变量 Data, 字节集

.如果真 (OpenClipboard (0) = 0 或 是否为空 (窗口句柄) = 假 且 IsWindow (窗口句柄) = 0)
    返回 ({  })
.如果真结束
TempFormat = EnumClipboardFormats (0)
.判断循环首 (TempFormat ≠ 0)
    加入成员 (Format, TempFormat)
    TempGlobal_1 = GetClipboardData (TempFormat)
    Value = GlobalSize (TempGlobal_1)
    TempGlobal_2 = GlobalAlloc (8194, Value)
    CopyMemory1 (GlobalLock (TempGlobal_2), GlobalLock (TempGlobal_1), Value)
    GlobalUnlock (TempGlobal_1)
    GlobalUnlock (TempGlobal_2)
    加入成员 (hGlobal, TempGlobal_2)
    ' 本源码来自三叶资源网(www.sanye.cx)
    DeleteObject (TempGlobal_1)
    TempFormat = EnumClipboardFormats (TempFormat)
.判断循环尾 ()
EmptyClipboard ()
CloseClipboard ()
keybd_event (44, 0, 0, 0)
keybd_event (44, 0, 2, 0)
处理事件 ()
OpenClipboard (0)
Value = GetClipboardData (2)
.如果真 (Value = 0)
    CloseClipboard ()
    keybd_event (17, 0, 0, 0)
    keybd_event (18, 0, 0, 0)
    keybd_event (107, 0, 0, 0)
    keybd_event (107, 0, 2, 0)
    keybd_event (17, 0, 2, 0)
    keybd_event (18, 0, 2, 0)
    处理事件 ()
    OpenClipboard (0)
    Value = GetClipboardData (2)
.如果真结束
' 本源码来自三叶资源网(www.sanye.cx)
.如果真 (是否为空 (窗口句柄) = 假)
    GetWindowRect (窗口句柄, RECT)
    hScrDC = GetDC (0)
    hScrMemDC = CreateCompatibleDC (hScrDC)
    DeleteObject (SelectObject (hScrMemDC, Value))

    hWinDC = GetDC (窗口句柄)
    hWinMemDC = CreateCompatibleDC (hWinDC)
    Width = RECT [3] - RECT [1]
    Height = RECT [4] - RECT [2]
    hWinBitmap = CreateCompatibleBitmap (hWinDC, Width, Height)
    DeleteObject (SelectObject (hWinMemDC, hWinBitmap))
    BitBlt (hWinMemDC, 0, 0, Width, Height, hScrMemDC, RECT [1] - 1, RECT [2] - 1, 13369376)
    ' 本源码来自三叶资源网(www.sanye.cx)
    ReleaseDC (0, hScrDC)
    ReleaseDC (0, hWinDC)
    DeleteDC (hScrMemDC)
    DeleteDC (hWinMemDC)
    DeleteObject (Value)
    Value = hWinBitmap
.如果真结束
.如果 (是否为空 (输出高度) = 假 且 是否为空 (输出宽度) = 假)
    hBitmap = CopyImage (Value, 0, 输出宽度, 输出高度, 4)
    DeleteObject (Value)
.否则
    hBitmap = Value
.如果结束

GdipCreateBitmapFromHBITMAP (hBitmap, 0, Bitmap)
CreateStreamOnHGlobal (0, 真, DataStream)
CopyMemory2 (pStream, DataStream, 4)
.如果真 (输出格式 < 1 或 输出格式 > 5)
    输出格式 = 1
.如果真结束
GdipSaveImageToStream (Bitmap, pStream, 多项选择 (输出格式, { 0 }, { 1 }, { 2 }, { 5 }, { 6 }) + { 244, 124, 85, 4, 26, 211, 17, 154, 115, 0, 0, 248, 30, 243, 46 }, 0)
GetHGlobalFromStream (pStream, hMemData)
Data = 指针到字节集 (GlobalLock (hMemData), GlobalSize (hMemData))
GlobalUnlock (hMemData)
GdipDisposeImage (Bitmap)
GlobalFree (hMemData)
DeleteObject (hBitmap)
EmptyClipboard ()
.计次循环首 (取数组成员数 (Format), n)
    SetClipboardData (Format [n], hGlobal [n])
    GlobalFree (hGlobal [n])
.计次循环尾 ()
CloseClipboard ()
' 本源码来自三叶资源网(www.sanye.cx)
返回 (Data)

资源下载:

文件下载


来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
弹幕解析战旗弹幕易语言阿里系最新地址库天猫动画帧汇编中文指令鼠标指针特性websocket协议简历下载代理采集按键精灵安卓版易包抖音脚本go agent配置京东登陆js例子正则表达式测试工具Fiddler拦截微信E2EE互联网服务器套件
最新评论