我之前一直使用win32clipboard来进行文本复制和粘贴操作,非常顺利。但现在我想知道如何通过它实现文件夹/文件等的复制/粘贴操作。我在使用Python尝试达成这个目标,但未能找到相关格式。例如,是将文件路径复制到剪贴板中,然后粘贴操作将剪贴板数据识别为文件路径并执行文件复制?完全不清楚 :(。
我之前一直使用win32clipboard来进行文本复制和粘贴操作,非常顺利。但现在我想知道如何通过它实现文件夹/文件等的复制/粘贴操作。我在使用Python尝试达成这个目标,但未能找到相关格式。例如,是将文件路径复制到剪贴板中,然后粘贴操作将剪贴板数据识别为文件路径并执行文件复制?完全不清楚 :(。
Windows的复制/粘贴功能将内容存储为OLE对象(http://en.wikipedia.org/wiki/Object_Linking_and_Embedding) 您需要使用Python包来处理OLE。这个帖子可能会有所帮助- 如何使用Python脚本化OLE组件?
当您将一个 shell 对象(例如文件或文件夹)复制到剪贴板时,shell 会以多种不同的格式将数据放入剪贴板。这种操作的剪贴板查看器显示以下格式:
说实话,我不知道在随后粘贴时使用哪个,但我猜测应该是Shell IDList Array
。重点是文件和文件夹不会进入剪贴板,只有对它们的引用。
我相信这方面有全面的文档,可以在MSDN:Shell Clipboard Formats上找到。
这应该足以让您进行进一步的网络搜索,以寻找Python包装器来实现此功能(我相信它们存在)!