如何正确捆绑&;将python安装到windows用户

如何正确捆绑&;将python安装到windows用户,python,windows,deployment,installation,Python,Windows,Deployment,Installation,我需要为我的用户重新发布Python 2.6 目前,我从为msi安装程序执行静默安装,但我有一些问题,比如如果安装了其他版本的python,这将无法获得默认值 另一方面,尽管这种情况可能很少见,但如果用户已经安装了python,而我安装了自己的python,那么可能会导致冲突 那么,哪一个可能是最好的行动诅咒?如何实现此安装的自动化?。我已经有了,但是可用的django堆栈对于我的应用程序来说太大了,我需要预先安装几个python模块 我想知道在这种情况下,virtualenv是否是最好的选择,

我需要为我的用户重新发布Python 2.6

目前,我从为msi安装程序执行静默安装,但我有一些问题,比如如果安装了其他版本的python,这将无法获得默认值

另一方面,尽管这种情况可能很少见,但如果用户已经安装了python,而我安装了自己的python,那么可能会导致冲突

那么,哪一个可能是最好的行动诅咒?如何实现此安装的自动化?。我已经有了,但是可用的django堆栈对于我的应用程序来说太大了,我需要预先安装几个python模块


我想知道在这种情况下,virtualenv是否是最好的选择,但仍然存在正确安装的问题…

除了一些初步研究之外,我还没有使用过它,但如果您正在寻找商业预构建解决方案,ActiveState通常会满足您的需求

我曾经开发过包含自己的捆绑Python的软件,从来没有任何冲突问题。在我们的例子中,它是与软件的其余部分一起安装的,而不是C:\Python26,并且它仅用于软件,而不是作为系统上任何现有Python的替代品。将stdlib预编译为.pyo的完整Python只需要约10-20MB的空间,具体取决于所包含的模块。所以我不会担心可能的裁员

拥有自己的副本也会让你的生活更轻松,因为你知道所有第三方库的确切版本;你不必担心用户升级会破坏你的应用程序。相反的观点是,出于安全原因,一些用户可能需要最新版本的库。但根据我的经验,这些用户只占极少数,对他们来说,这只能归结为多做一点工作


最后,我想您有理由想要完整的Python安装。如果您只对分发单个应用程序感兴趣,请查看。

尝试查看此视频()。

这可能没有帮助,但您真的需要将Python作为常规安装分发吗?有一些东西,比如py2exe,它与InnoSetup等安装程序构建器配合使用,可以让您向用户交付可执行文件,而不会干扰本地Python安装或其他问题。我不能使用py2exe,因为它用于可以在Python中访问脚本/插件的服务器,所以我需要完整的Python发行版…@mamcx,这绝不是一个真正的问题。即使应用程序是py2exe'd,它仍然能够从文件系统导入并使用execfile()之类的函数。也许一个单独的问题会给你一个简单的解决方案,让这个问题变得毫无意义。这是一个插件系统。我提供了一个python模块(SDK)来使用我的服务器,还有其他方法:插件加载SDK。此外,这将在OSX和Linux上工作,因此有两种方法会使事情复杂化。Py2Exe只是一个部署单个脚本的解决方案,而不是用于部署web服务器(我的应用程序是一个类似于soft的web服务器),我承认您最清楚这种情况下需要什么。另一个注意事项是:我们还成功地使用py2exe打包了一个作为Windows服务安装的基于Pylons的web服务器应用程序,因此使用py2exe进行多个“单个脚本”也没有固有的问题。是的,它是商业化的,因此您在成本方面有缺点,在支持方面也可能有优势。你没有提到任何成本要求,所以我把它作为一种选择。