2011-02-18 79 views
2

我开发了一些软件来通知用户,当他们在未经授权的应用程序中粘贴内容时,我钩住了GetClipboardData来执行此操作。几乎一切工作正常,但是当我从Word复制内容例如,我点击InternetExplorer,我打开资源管理器窗口并关闭它,一些GetClipboardData从资源管理器启动。有人可以帮助我理解这种行为吗? 预先感谢 问候为什么在资源管理器窗口关闭几个GetClipboardData时启动?

回答

1

是很常见的,从某些应用程序收到意想不到的剪贴板事件,大多是来自微软,当你做这样的事情关闭窗口或做任何事情,使应用程序停止,并认为:“嘿,也许我离开剪贴板上的一些垃圾,我最好把它清理干净,也许把它重新发布成纯文本而没有OLE的东西,也许我已经做到了,但我不记得了,所以我会再做一次。“这是一种强迫症,他们只是建立在一种强迫症状之上。有时,当您退出程序时,弹出窗口会显示“您已将大量数据放在剪贴板上,您是否希望将其用于其他应用程序”。这是一回事。基本上,他们已经在剪贴板上放置了一些需要“延迟渲染”才能粘贴的格式。而现在,该应用程序担心在剪贴板上留下无效数据,因此必须重新发布数据而不使用花哨的格式。 如果您从Excel中复制单元格,然后取消突出显示该单元格,您也会得到此信息。 如果您在启动应用程序时收到剪贴板事件,可能是加载项挂钩到剪贴板链中,或者可能犯下最糟糕的错误:将其图标复制/粘贴到工具栏中。

+0

再次点亮我的问题,谢谢。我会试着看看我能用剪贴板格式做什么。 – Delatour 2011-03-12 20:59:13

相关问题