精易论坛

标题: 剪辑板数据处理思路【QQNT 复制多图文数据示例】 [打印本页]

作者: 观音    时间: 2024-1-30 20:30
标题: 剪辑板数据处理思路【QQNT 复制多图文数据示例】
想要复制指定格式的数据 如:带格式的html文本 带格式的excel数据 任何聊天程序的复杂数据.... 看着一个教程就够了本来不想发这个帖子的 我记得之前也有很多复制QQ图文数据的源码 但是这里还是重新写一下 我觉得思路真的很简单 但是不知道为什么有人会跟我杠

1.复制原始数据
想办法得到一个你要复制的数据格式,这里既然要做QQNT的聊天所以需要在QQ中发送或者输入一条示例文本然后复制
这里在QQ聊天框输入内容

这时候可以直接复制也可以发送后复制,只要确定复制后粘贴到这里依然可以正常读取即可

2.获取剪辑板原始数据

  
子程序名返回值类型公开备 注
getClipboardData  
变量名类 型静态数组备 注
clipboarDataArray剪辑版数据0
i整数型 
剪辑板_取所有内容 (clipboarDataArray)  ' 获取你复制的所有内容
计次循环首 (取数组成员数 (clipboarDataArray), i)
调试输出 (clipboarDataArray [i].剪辑版数据格式, clipboarDataArray [i].字节集长度, clipboarDataArray [i].文本型数据)
计次循环尾 ()


i支持库列表   支持库注释   
spec特殊功能支持库


可以得到以下数据

  
' 1: 50305 | 416 | “QQ_Unicode_RichEdit_Format”
' 2: 49468 | 460 | “HTML Format”
' 3: 49469 | 4 | “Preferred DropEffect”
' 4: 15 | 486 | “”



此处根据字节集长度来看,明显不是图片数据,如果是图片数据字节集长度不会这么短

那么这时候就用 到文本 / utf8转ansi / unicode转文本 得到明文数据 90%的数据用utf8存取 剩下少部分为 unicode或者明文存取 这里要注意 utf8转ansi 和 到文本 如果在没有中文或者一些外国语言的情况下获取的数据是一样的 尽量复制带中文的数据来获取


再次修改上面的代码改为

  
子程序名返回值类型公开备 注
getClipboardData  
变量名类 型静态数组备 注
clipboarDataArray剪辑版数据0
i整数型 
剪辑板_取所有内容 (clipboarDataArray)  ' 获取你复制的所有内容
计次循环首 (取数组成员数 (clipboarDataArray), i)
调试输出 (clipboarDataArray [i].剪辑版数据格式, clipboarDataArray [i].字节集长度, clipboarDataArray [i].文本型数据)
调试输出 (编码_Utf8到Ansi (clipboarDataArray [i].字节集数据))  ' 到文本 utf8转ansi unicode转文本   特别注意 utf8转ansi 和 到文本 如果在没有中文的情况下获取的数据是一样的 99%的程序都是用的utf8编码 这里尽量复制点中文数据试一下
计次循环尾 ()


i支持库列表   支持库注释   
spec特殊功能支持库


数据1、2得到两串明文数据 3、4 为乱码数据

因为格式文本复制到这里会无法展示 所以使用图片显示


其实这里也可以看的出来 数据1是QQ专用的复制格式 数据2是html的通用复制格式 是为了兼容添加的 我们只需要修改数据1中的数据复制即可 当然 更推荐修改第二种 一般主流的聊天工具都会兼容html  QQ通用数据可能没有适配的那么好 当然 QQ和WeChat都是支持的 其他数据我们暂时不需要处理 只需要拷贝其中任何一条即可 如果出现问题再来处理其他的数据 一般哪怕你修改内容 也直接按照之前的数据置入即可  直接 调试输出(clipboarDataArray .字节集数据) 得到原始字节集数据 置入进去就好了

3.置剪辑板数据

既然得到格式了 稍作修改再置入即可 这里直接按照格式置入文本数据试一下



然后粘贴到QQ和WeChat 发现他并没有展示格式 只是展示了我们要复制的文本数据 说明理论可行 继续按照格式添加图片和内容

添加时发现格式非常简单  QQRichEditFormat 元素内 包含着 EditElement 元素
EditElement type 0 是文字 1是图片 按照格式进行拼接即可

因为格式文本复制到这里会无法展示 所以使用图片显示


发现粘贴后显示正常、发送展示正常完工

下面是源码: demo.e (958.59 KB, 下载次数: 138)

作者: 447485268    时间: 2024-1-30 20:34
支持开源~!感谢分享
作者: wuqingg    时间: 2024-1-30 20:34
多谢观音菩萨指点~~~
作者: 布点脚本师    时间: 2024-1-30 21:38
支持开源~!感谢分享
作者: 网络注册络员    时间: 2024-1-30 21:41
支持开源
作者: 网络注册络员    时间: 2024-1-30 21:42
下来试一下
作者: 亿万    时间: 2024-1-30 22:01
        感谢分享,很给力!~
作者: amycarl    时间: 2024-1-30 22:38
老哥,你试一试 企业VX,试了搞不定呢
作者: 观音    时间: 2024-1-30 22:41
amycarl 发表于 2024-1-30 22:38
老哥,你试一试 企业VX,试了搞不定呢

这里主要是分享原理的 推荐你用下面的html代码去改 还有 文件路径改成你自己的路径了吗 确定正确吗
作者: amycarl    时间: 2024-1-30 22:43
观音 发表于 2024-1-30 22:41
这里主要是分享原理的 推荐你用下面的html代码去改 还有 文件路径改成你自己的路径了吗 确定正确吗 ...

十分感谢老哥,我用的是
<WeChatRichEditFormat><EditElement type="0"><![CDATA[
要发送的前面文本
]]></EditElement><EditElement type="0"><![CDATA[
中间的数据
]]></EditElement></WeChatRichEditFormat>
看获取的格式及编码内容 都对,就是置剪贴板后,粘贴没反应
作者: 观音    时间: 2024-1-30 22:49
amycarl 发表于 2024-1-30 22:43
十分感谢老哥,我用的是

看获取的格式及编码内容 都对,就是置剪贴板后,粘贴没反应 ...

格式 字节集长度 还有文本型数据 都置入了吗 按照我的源码写
作者: amycarl    时间: 2024-1-30 22:53
观音 发表于 2024-1-30 22:49
格式 字节集长度 还有文本型数据 都置入了吗 按照我的源码写

嗯,是的 ,QQ  NT  VX都还好, 就只有企业VX不行,纳闷了
作者: 观音    时间: 2024-1-30 22:54
amycarl 发表于 2024-1-30 22:53
嗯,是的 ,QQ  NT  VX都还好, 就只有企业VX不行,纳闷了

那你就按照我的思路获取 企业vx的剪辑板数据 再置入
作者: 大刀刃    时间: 2024-1-30 23:58
支持开源~!感谢分享
作者: 1090448765    时间: 2024-1-31 00:25
支持开源~!感谢分享
作者: zhijia    时间: 2024-1-31 02:00
支持开源~!很给力
作者: 784326742    时间: 2024-1-31 05:06
假设文件是没有路径的呢
作者: 查过    时间: 2024-1-31 07:12
已经顶贴,感谢您对论坛的支持!
作者: 豆豆灰常开心    时间: 2024-1-31 07:16
感谢楼主分享!
作者: kyo9766    时间: 2024-1-31 08:29
还有原理分析,感谢分享
作者: year1970    时间: 2024-1-31 08:38
感谢分享
作者: 观音    时间: 2024-1-31 08:50
784326742 发表于 2024-1-31 05:06
假设文件是没有路径的呢

写到临时目录呗,编程之前想原理,一个不存在的东西凭空捏造吗
作者: 小虎来了    时间: 2024-1-31 09:14
感谢分享,很给力!~
作者: bianyuan456    时间: 2024-1-31 09:20
已经顶贴,感谢您对论坛的支持!
作者: 光影魔术    时间: 2024-1-31 11:14
感谢分享源码
作者: 一指温柔    时间: 2024-1-31 11:54
支持开源~!感谢分享
作者: ZHuanR    时间: 2024-1-31 16:27
新技能已get√
作者: 深圳梦    时间: 2024-1-31 18:42
感谢分享,很给力!~
作者: zaozi    时间: 2024-1-31 20:35
学习一下
作者: 396384183    时间: 2024-1-31 21:29
谢谢分享
作者: KEY心碎    时间: 2024-1-31 21:55
支持开源~!感谢分享
作者: Av0x    时间: 2024-1-31 22:18
6666羡慕大佬 大佬带我飞
作者: wmv520    时间: 2024-1-31 22:23
        感谢分享,很给力!~
作者: 查过    时间: 2024-2-1 07:22
下个学习一下
作者: 豆豆灰常开心    时间: 2024-2-1 07:27
下个学习一下
作者: 猫猫Angel    时间: 2024-2-1 08:45
支持开源~!感谢分享
作者: luxiao01    时间: 2024-2-1 11:23
支持开源~!感谢分享
作者: pipicool    时间: 2024-2-2 02:17
学习一下
作者: lm88818    时间: 2024-2-2 09:43
        感谢分享,很给力!~
作者: qq73s5456    时间: 2024-2-3 17:00
EXCEL 内容复制 是图片格式的.
作者: 三千繁华    时间: 2024-2-3 17:13
这背景帅
作者: 观音    时间: 2024-2-4 01:40
qq73s5456 发表于 2024-2-3 17:00
EXCEL 内容复制 是图片格式的.

有图片也有文本,他有好几个类型
作者: 财付通消息    时间: 2024-2-5 09:30
支持,这个太好了,授人以鱼,更授人以渔,学习思路才最重要。
作者: 亿万    时间: 2024-2-5 21:17
        感谢分享,很给力!~
作者: 龍貓    时间: 2024-2-6 07:33
感谢分享,很给力!~
作者: 凉兮    时间: 2024-2-6 16:03
小小心意,意思一下
作者: 苍凉会飞    时间: 2024-2-14 01:52
感谢分享,很给力!~
作者: xiaojiancccc    时间: 2024-2-15 14:50
感谢分享,很给力!~
作者: chenzhuming    时间: 2024-2-23 00:06
感谢分享
作者: wsysyb    时间: 2024-3-12 21:32
谢谢分享
作者: wsysyb    时间: 2024-3-12 21:33
是否可以取出全文本和图片数据?

作者: lm88818    时间: 2024-4-1 09:26
        开源精神必须支持~
作者: kioll666    时间: 2024-4-5 21:17
666666666666
作者: ysdhy    时间: 2024-4-13 23:32
支持下,好东西
作者: wolfpack    时间: 2024-4-19 22:42

作者: amycarl    时间: 2024-4-22 14:21
多谢分享,学习试用
作者: liuqiqi87    时间: 2024-5-9 15:44
多谢分享,学习试用
作者: 『过客』    时间: 2024-8-23 16:00
前人栽树,后人乘凉
作者: 『过客』    时间: 2024-8-23 16:03
不对不对  不是我要的
作者: 1300886755    时间: 2025-1-17 15:19
感谢分享
作者: hudengke    时间: 2025-5-7 18:01
下载学习
作者: hudengke    时间: 2025-5-7 18:12
希望能用的上




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4