V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
natsukage
V2EX  ›  程序员

QQ PC 版本升级后无法正常向其他程序粘贴聊天中的图片了

  •  
  •   natsukage · 2022-12-07 01:11:41 +08:00 · 1566 次点击
    这是一个创建于 742 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如从 QQ 中复制包含多张图片的一条消息到微信或 TG 。 现在复制单图后,在 TG 粘贴还是正常的。但是如果复制同时含有多张图片的消息(不论是其他人发的还是自己在发送栏里的)直接复制粘贴,到 TG 都会提示给出的图片路径是一个 Empty File 无法发送。 例如,这里 TG 粘贴时给出的报错路径是

    .../AppData/Roaming/Tencent/QQ/Temp/O0%60%25RZ8JC6%60L[GDE03DE$QI.png

    但是实际查看剪贴板内容可以看到,剪贴板中无论是 HTML 还是 QQRichText 格式的均为正常路径。

    Version:0.9 StartHTML:00000112 EndHTML:00000432 StartFragment:00000126 EndFragment:00000396

    <html><body>

    </body> </html>

    另,图文混合的消息,和多图消息一样,也会出现同样的问题。粘贴时报告 /AppData/Roaming/Tencent/QQ/Temp/下的图片为空,无法发送。但是实际上图片真实的目录根本不在这里,而是在 QQ 自己的消息记录文件夹( Tencent Files<QQ 号>\Image\)下。

    回退到 QQ9.6.8.28823 版本后工作正常。 此外,运行旧版本 QQ 时,即使直接在 TG 中粘贴几分钟前从新版本 QQ 粘贴来的图片组,也可以正常的粘贴。 经过对比可以看到剪贴板内容格式上,新旧版 QQ 并没有区别。在新版本 QQ 中 Ctrl+C 复制多图消息,然后安装并启动旧版本 QQ ,然后再在 TG 中按下粘贴,就可以正常的粘贴多图了。

    显然,问题是由于当你在其他程序(微信或 TG 等)中粘贴来自 QQ 的消息时,作为粘贴来源的 QQ 提供了一个%AppData%下的 Temp 路径下的临时图片目录。但是这个目录中是并没有实际对应的图片文件的。我用图片文件名通过 Everything 搜索只能找到 Tencent Files<QQ 号>\Image\下的唯一图片。

    这个本来是这类非纯文本内容在复制粘贴时的特性,即复制源并没有真的把复制的内容原原本本的放在剪贴板里,而是到内容被 CtrlV 时,才会去要求内容源按照要求的格式进行渲染。这也是为什么在 OneNote 等软件中粘贴来自 VSC 的代码时会保留高亮格式的原因。 显然,新版本的 QQ 在这里额外的多做了一些处理,使得当 QQ 的消息被粘贴至其他应用时,对方应用无法正确地取得消息中图片的地址。

    这个问题也会导致 flomo 等其他软件中无法正常粘贴图片(起码在 pwa 中不行)。

    目前姑且是用 Quicker 写了个动作每次粘贴之前手动的处理剪贴板里的内容,但是做得并不优美。还是回退回之前版本 QQ 最简单。

    虽然知道大概的理由,但是完全不清楚 QQ 要这么做的原因(不单单是笔记软件等受到影响,连自家的微信也无法正常粘贴图片了) 姑且还是想问一下,有没有办法规避这个问题呢?还是说其实是我想错了,有什么其他东西影响了我的剪贴板内容?(因为完全没看到有其他人提起过相关 issue ,所以确实也有这种可能性)

    万分感谢!

    3 条回复    2022-12-07 09:28:18 +08:00
    smallthing
        1
    smallthing  
       2022-12-07 02:01:47 +08:00
    因为 QQ 的程序员用高端的 macbook 不用 pcqq 就这么简单
    systemcall
        2
    systemcall  
       2022-12-07 02:43:41 +08:00
    有可能是准备换成 electron ,在为升级做埋点吧
    28Sv0ngQfIE7Yloe
        3
    28Sv0ngQfIE7Yloe  
       2022-12-07 09:28:18 +08:00
    之前可以吧 mac 微信中的表情复制出来,现在也不行了,有没有方法?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5776 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 01:41 · PVG 09:41 · LAX 17:41 · JFK 20:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.