我有一个python应用程序(PyQt4应用程序),我使用setuptools创建了一个Windows MSI安装程序。
python setup.py bdist_msi
MSI正确安装应用程序(在site-packages下)。在卸载(msiexec / x)时,它还会删除所有相关的* .py文件。但是,编译的文件仍然存在于磁盘上。随后当我运行新版本的应用程序时,它仍然会选择陈旧的* .pyc文件。
是否可以选择以某种方式告诉MSI清理* .pyc和* .pyo文件?
(我怀疑这是因为* .pyc和* .pyo文件首先没有由MSI安装,而是在运行python.exe时创建。但是会感谢一些指导。)
由于
答案 0 :(得分:0)
你是完全正确的。 Msi不会删除这些文件,因为它们未由安装程序部署。为了清理它们,你必须创建自定义动作,它将删除所有* .pyc和* .pyo文件。
为了防止您知道确切的文件名,您可以添加虚拟(空)文件,以便安装人员将其视为" s" property"并在卸载时删除它们。