什么情况下会撞上它

典型场景是:在浏览器里复制了一段报错,切到终端要粘贴时,前一条复制的内容已经被覆盖;或者要截一张窗口图发给同事,先打开微信截图、再保存、再拖进聊天框。装了一堆截图和剪贴板工具,开机自启项越来越长。

Windows 10 和 Windows 11 自带两个功能,覆盖大部分这类需求:Win + V 打开剪贴板历史,Win + Shift + S 进入截图。两者都不需要安装额外软件。

怎么做

剪贴板历史。 第一次按 Win + V,系统会提示剪贴板历史未开启,点提示里的“开启”按钮即可。也可以走设置路径:设置 → 系统 → 剪贴板 → 打开“剪贴板历史记录”。开启后每次按 Win + V 会弹出一个列表,按复制顺序倒序排列,点任意一条即可粘贴到当前光标处。列表里每条右侧有固定按钮(图钉图标),固定的条目不会被新内容挤掉。

截图。 按 Win + Shift + S,屏幕变暗并出现顶部工具栏,四个模式:矩形、任意形状、窗口、全屏。框选后图像进入剪贴板,同时右下角弹出通知,点通知可进入“截图工具”编辑并保存为文件。如果不点通知,图片只在剪贴板里,直接 Ctrl + V 粘贴即可。

在 DSH 里用。 如果要把截图或复制的内容投递到 DSH 会话,本机投递接口是:

curl -X POST http://127.0.0.1:3080/api/dsh-im/delivery/messages \
  -H "Content-Type: application/json" \
  -d '{"botId":"<bot-id>","targetId":"<target-id>","text":"粘贴内容","format":"plain"}'

format 只接受 plain 或 markdown,返回 {"sent": true} 表示受理。该接口只监听回环地址,不需要额外鉴权。投递目标在 /integrations/dsh-<渠道>/workspaces.json 的 deliveryTargets 里配置。截图本身是二进制,接口的 text 字段只收文本,所以截图仍需先保存成文件再另行处理,不要指望把图片塞进这个字段。

为什么有效

剪贴板历史由系统在内存中维护一份最近若干条的副本,Win + V 只是把这份副本渲染成可点选的列表,所以它不依赖任何第三方进程,也不会因为某个软件退出而失效。截图快捷键调用的是系统级截图服务(Snipping Tool 的后台组件),框选结果直接写入剪贴板,省掉了“打开工具—截图—保存—再粘贴”的中间步骤。

怎么确认成了

  • 按 Win + V 有列表弹出,且能看到刚才复制的内容,说明历史已开启。
  • 按 Win + Shift + S 屏幕变暗并出现工具栏,说明截图服务可用;框选后右下角有通知,说明图片已进剪贴板。
  • 调 DSH 投递接口时,看返回体是否为 {"sent": true};不是则检查 botId / targetId 是否与 workspaces.json 里的 deliveryTargets 一致,以及 format 是否拼错。

坑与边界

  • 剪贴板历史默认不保存密码管理器标记为敏感的内容,某些应用复制时也会主动排除,所以列表里看不到是正常的。
  • 历史条数和是否跨设备同步在“设置 → 系统 → 剪贴板”里控制;关闭历史后 Win + V 只会提示开启,不会显示旧内容。
  • Win + Shift + S 在部分远程桌面或虚拟机窗口里可能被宿主机截获,表现为按了没反应,需要在宿主机侧调整快捷键或改用窗口内截图。
  • 截图工具的通知如果被专注助手或通知设置屏蔽,图片仍在剪贴板里,只是不会弹出编辑入口。
  • 这两个功能都是本机行为,不经过网络;DSH 的投递接口是另一条链路,二者不要混为一谈。接口字段以当前版本为准。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注