我有兴趣学习 Windows 系统内部结构及其工作原理。我倾向于学习windows上的系统编程。在这种背景下,我很想知道有关 Windows 剪贴板内部功能的一些事情:
- 当我们选择一些文本、图像等并按下时会发生什么
Ctrl + C ?
- 当我们在不同的应用程序中按 Ctrl + V 时,到底会发生什么?
- 复制的数据到底驻留在哪里?复制的数据是否进入内核模式内存 - 在所有进程之间共享?
- 复制的数据如何可供不同的进程使用?
我想从系统程序员的角度知道上述问题的答案。
另外,共享讨论 Windows 剪贴板内部结构的任何资源。
我的网站上有一些很好的资源:http://www.clipboardextender.com http://www.clipboardextender.com它讨论了剪贴板查看器的实现、典型错误、该做和不该做的事情。
基本上,剪贴板是一个共享内存区域,您可以将数据复制到其中(也称为“复制”,例如响应用户按 Ctrl+C)并从中复制数据(也称为“粘贴”)。
数据可以同时以数十种常见格式和任意数量的程序员定义的格式表示。
不可能完全“备份”剪贴板并按原样恢复它,而不影响其他程序,并造成负面的用户体验。查看“延迟渲染”以了解原因,并考虑当 Excel 用户在电子表格中复制 5000 行 x 255 列并按 Ctrl+V 时会发生什么。了解这一点,您就会了解延迟渲染的魔力(和陷阱)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)