对于Stackoverflow专家来说,对于Python程序员来说,这是一个很难的。
我正在使用Python编写的加密SQLITE3容器。最终目标是用户,而不是开发人员。
所有功能都按预期工作,但我的问题是从容器中执行EXECUTE文件的功能。
EXECUTE的工作原理:
好的,步骤1和2都可以。我宁愿不在HDD上写文件,例如我想从内存中执行它,但你需要告诉每个应用程序WHERE打开一个文件,它必须是来自HDD的路径,对吗?
最安全的是为文本,图像,音乐,视频实现我自己的内部查看器,因此我不需要在HDD上导出数据。但这是不现实的:)
所以问题是步骤4和5.如果执行没有阻塞,我如何知道何时删除文件?...
我尝试了子进程(wait,communication,check_call)和os.system中的所有函数来执行阻塞...也许还有其他函数等待进程完成?...
也许有办法自动删除临时文件?或者我应该在运行时列出一个列表,并在程序关闭时删除它们......
也许有办法检查某个应用是否打开了某个文件?例如:“my-pic.jpg”由Image-Viewer打开,所以我无法删除它,但我会在几秒钟内再次检查,如果没有其他应用程序使用它,我可以删除它。 //也许用“ps ax | grep my-pic”我可以找到文件是否打开。但这不适用于Windows。
任何想法,任何消化?
非常感谢!
答案 0 :(得分:1)
一些想法: