我希望我的wxPython应用程序支持应用程序的不同运行实例之间的剪切/复制/粘贴操作。可以简单地挑选一个数据结构,将其作为文本复制到剪贴板,然后将其取下来进行粘贴操作吗?
我知道我必须检查数据,看看它是否来自我的应用程序。或者我可以尝试去解开那里的任何东西吗?如果它试图解开留在剪贴板上的任意文本,那么pickle有多么健壮吗?
此外,这种方式可以复制多少数据是否存在实际限制?
我今天在Windows和Linux上运行 - 没试过Mac。
修改 我知道文档中的那条评论。我真的不关心恶意用户试图破坏他自己的软件实例,如果这是人们担心他们应该弃用泡菜。我的问题是实用性,而不是安全性。
答案 0 :(得分:1)
您不应该信任来自剪贴板的数据进行unpickling,除非您有一个确定的方法来确保它被您的应用程序所取代,并且没有被更改。
来自python文档:
警告pickle模块无法防范 错误或恶意构造的数据。永远不要破坏数据 从不受信任或未经认证的来源收到。
答案 1 :(得分:1)
如果适用,我建议您使用众多python实现之一将数据转换为json。
使用剪贴板很容易传输纯文本,而且没有将json对象转换回python的风险。
最后一件事:没有弃用的风险。