找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 21882|回复: 7

[系统相关] [已解决]判断系统剪贴板中的内容类型

[复制链接]
发表于 2021-12-9 11:03:39 | 显示全部楼层 |阅读模式
本帖最后由 locoman 于 2021-12-13 12:46 编辑

请教:
怎么及时判断系统剪贴板中的内容属于哪种类型??
1.  系统剪贴板中内容一般会有哪几种类型?
2.  当前系统剪贴板中内容知否属于图片类型?
3.  如果属于图片类型,就立即清除剪切板内容?

谢谢大神们的指导和帮助!!
发表于 2021-12-9 13:00:45 | 显示全部楼层
powershell -sta
  1. if ([System.Windows.Clipboard]::containsimage()){[system.windows.clipboard]::clear()}else{"无图片"}
复制代码
 楼主| 发表于 2021-12-9 14:18:30 | 显示全部楼层
powershell -sta
for_flr 发表于 2021-12-9 13:00



    谢谢您的帮助!!
但是,我运行代码时报错:

C:\Users\Administrator>powershell
Windows PowerShell
版权所有 (C) 2009 Microsoft Corporation。保留所有权利。

PS C:\Users\Administrator> if ([System.Windows.Clipboard]::containsimage()){[system.windows.clipboard]::clear()}else{"无
图片"}
找不到类型 [System.Windows.Clipboard]: 请确保已加载包含此类型的程序集。
所在位置 行:1 字符: 31
+ if ([System.Windows.Clipboard] <<<< ::containsimage()){[system.windows.clipboard]::clear()}else{"无图片"}
    + CategoryInfo          : InvalidOperation: (System.Windows.Clipboard:String) [], RuntimeException
    + FullyQualifiedErrorId : TypeNotFound
发表于 2021-12-9 14:39:10 | 显示全部楼层
回复 3# locoman
  1. powershell -STA -Command "add-type -AssemblyName PresentationCore;if([System.Windows.Clipboard]::containsimage()){[system.windows.clipboard]::clear()}else{"无图片"}"
复制代码
发表于 2021-12-9 14:50:15 | 显示全部楼层
回复 3# locoman


    启动powershell时,后面加-sta
 楼主| 发表于 2021-12-10 15:22:30 | 显示全部楼层
本帖最后由 locoman 于 2021-12-10 15:54 编辑
回复  locoman
flashercs 发表于 2021-12-9 14:39



   
非常感谢大家的热情相助!!(2楼,即使加了powershell -sta,还是报同样的错)

4楼您的代码完全能实现要求——只对剪贴板中截图信息清除了,并不影响剪贴板中复制的文字信息,很好!谢谢您了!!


这个论题真的很有味道,值得深入讨论:

一、目前4楼的代码主要问题是运行很慢,差不多需要近20秒左右才能出结果。
请问:有没有更快的效率更高的方案?
因为,一般的微信、QQ、钉钉等在截屏(截图)的同时,既送给了系统剪贴板,也送给了它自身的应用中,即使清除了剪贴板,它的应用中早就有了截图。

二、我还想在现有的基础上,增加一个“有图片”的回显结果:也就是————剪贴板中不是图片时,不清除剪贴板中的内容,输出回显“无图片”;如果是图片时,在清除剪贴板中的图片的同时还回显一个“有图片”。
还得请您再帮我补充一下,拜托了!!

三、剪贴板中的内容一般分为几类?这些类型都是些啥标识?
发表于 2021-12-10 20:45:35 | 显示全部楼层
回复 7# locoman


链接:https://pan.baidu.com/s/1AV5ZJKwsZHHxGIQ7IVSlaQ
提取码:4m1b
两个文件,一个批处理检测,一个exe检测,我测试性能差不多,你自己测试吧.
最好说明win7还是win10 ?
剪贴板数据类型是可变的,可以自己注册新类型;常用类型见左侧列表:https://docs.microsoft.com/en-us ... =netframework-4.7.2
枚举本机所有已注册的剪贴板数据类型,可以用批处理 "枚举剪贴板数据类型.bat",保存到文件 ClipFormats.txt
 楼主| 发表于 2021-12-13 12:45:55 | 显示全部楼层
回复  locoman


链接:
提取码:4m1b
两个文件,一个批处理检测,一个exe检测,我测试性能差不多,你自 ...
flashercs 发表于 2021-12-10 20:45



还专门弄几个出来测试, 实在是太感谢您了!!
论坛有此热心大神,甚幸!甚幸!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 17:57 , Processed in 0.032882 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表