我正在为Windows 7的Python应用程序开发Inno Setup安装程序,我有以下要求:
该应用程序不应将任何内容写入安装目录
它应该能够使用.pyc文件
该应用程序不需要特定的Python版本,因此我不能仅将一组.pyc文件添加到安装程序中
有建议的处理方式吗?喜欢给用户一种方法来(重新)生成.pyc文件吗?还是更短的启动时间受益于.pyc文件,通常不值得担心?
最佳答案
不能保证PYC文件与不同的python版本兼容。如果您不知道所有客户都在运行相同的python版本,那么您真的不想直接分发pyc。因此,您必须在分发PYC和支持多个python版本之间进行选择。
您可以创建使用py_compile编译所有文件并将其压缩为特定于版本的程序包的构建过程。您可以使用setuptools.来完成;但是这样做会很尴尬,因为您必须在需要支持的每个版本中运行py_compile。
如果您基本上是在分发封闭的应用程序,并且不希望人们对您的源代码进行琐碎的访问,那么py2exe可能是一个更简单的选择。如果您的python应该集成到用户的python安装中,那么创建一个.py文件的zip文件并添加一个单行.py存根(使用zipfile导入压缩包)可能会更简单。
如果让您感觉更好,PYC不会提供太多额外的安全性,也不会真正提高性能:)
关于python - Python .pyc文件和Windows UAC,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14407779/