Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Windows下面制作绿色版的Pytho

Windows下面制作绿色版的Pytho

作者头像
py3study
发布于 2020-01-08 09:31:30
发布于 2020-01-08 09:31:30
8360
举报
文章被收录于专栏:python3python3

首先在某个地方安装安装版的Python,比如虚拟机里,我装的是“python-2.7.1.msi”,然后把安装目录整个拷过来备用。之所以安装版无法做成绿色版,是因为其中的三个主要文件“python.exe”、“pythonw.exe”和“python27.dll(安装在system32目录中)”都依赖于“msvcr90.dll”这个非常恶心的东西。我们需要把它绿色化。 下载并解压缩源代码包,我下载的是“Python-2.7.1.tar.bz2”,然后进入“PCbuild”目录,用Visual Studio 2008打开“pcbuild.sln”文件,注意,“PC”目录下面还有一些早期版本Visual Studio的工程文件,我试过VC6的,根本无法编译,其它没试,不过既然官方都用2008的,那我们也跟着用就是了。 我的Visual Studio 2008装了SP1,编译其中的“python”、“pythoncore”和“pythonw”三个项目得到“python.exe”、“pythonw.exe”和“python27.dll”三个文件,替换备用目录中同名的文件,然后把Visual Studio 2008安装目录中的“VC\redist\x86\Microsoft.VC90.CRT”目录中的“msvcr90.dll”和“Microsoft.VC90.CRT.manifest”也拷到备用目录中,再把备用目录整个拷到一个干净的环境中。执行python.exe,却出错了:无法启动!用Depends工具观察,报依赖错误! 回过头检查编译生成的manifest文件才发现,原来虽然Visual Studio 2008装了SP1,按理CRT已经升级到了9.0.30729.4148版,但是manifest里链接的还是9.0.21022.8版!所以只能将“python”、“pythoncore”和“pythonw”三个项目的属性作如下设置:

然后重新编译后,manifest文件就独立出来而不是嵌在程序中了,最后得到“python.exe”、“pythonw.exe”、“python27.dll”和相应的manifest文件“python.exe.manifest”、“pythonw.exe.manifest”、“python27.dll.manifest”,整个拷到备用目录中替换原来的文件。 用文本编辑器打开“python.exe.manifest”、“pythonw.exe.manifest”、“python27.dll.manifest”和“Microsoft.VC90.CRT.manifest”四个manifest文件,把前三个文件中的“assemblyIdentity”中的“version”和“publicKeyToken”修改成和“Microsoft.VC90.CRT.manifest”保持一致 OK!再次执行python.exe,一切正常了! 最后在备用目录中新建一个批处理文件“console.bat”,内容为: @echo off cd /d %~dp0 set PATH=%CD%;%PATH% start cmd.exe 以后直接执行该批处理文件就能得到一个设置好环境变量的Shell了。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/08/29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
编辑精选文章
换一批
pyinstaller
PyInstaller 可以将 python 程序打包成一个单一的 exe 可执行包
franket
2021/08/12
2.4K0
各个版本Microsoft Visual C++运行库下载
Microsoft Visual C++ 2005 Redistributable Package (x86) http://download.microsoft.com/download/8/B/4/8B42259F-5D70-43F4-AC2E-4B208FD8D66A/vcredist_x86.exe Microsoft Visual C++ 2005 Redistributable Package (x64) http://download.microsoft.com/download/8/B/4/8B42259F-5D70-43F4-AC2E-4B208FD8D66A/vcredist_x64.exe
全栈程序员站长
2022/09/09
4.3K0
[Setting]win7下运行exe失败:应用程序无法启动,因为应用程序的并行配置不正确
因为他们是新装的系统,给他们装的是Win7 32bit的系统,其它什么都没安装,根据网上的说明,估计是两个问题。
祥知道
2020/03/10
30.6K0
如何在vs中链接vc6的运行时库
是这样,vc6的运行时库有个巨大的好处,就是全系列windows都自带了,而且不用管傻逼的manifest问题。
龙泉寺扫地僧
2019/02/20
1.9K0
python监控windows的CPU,
有一批windows系统需要监控,无论是zabbix、nagios都需要安装相关插件,操作起来比较麻烦。
py3study
2020/01/07
1.6K0
vs2010 IDE编译多版本ARX的情况理解
       1、安装VS2010;        2、先去http://daffodil.codeplex.com/ 下载安装platform toolset;        3、硬盘上有低版本的VS(VC6,VS2002,VS2003,VS2005,VS2008),这些低版本的VS无需安装版本,可以从别人安装的那儿复制过来。或者下载传说中的很多绿色版的VC编译器。     (非开发机器会因为编译的的环境不同需要安装不同的运行环境VC ++  Redistribute 否则会出现ARX文件无法加载的问题) 主要是VS2005时代对应的AutoCAD 2007-2009版本, VS 2008 SP1是必须的AutoCAD 2010时就使用了。
用户3519280
2023/07/06
3770
Theano 中文文档 0.9 - 5.3 Windows安装说明
如果你想从GitHub安装Theano的前沿或开发版本,请确保你正在阅读此页面的最新版本。
ApacheCN_飞龙
2022/12/01
1.4K0
python 将python程序编译成可
官网: http://www.pyinstaller.org/ 下载与操作系统相匹配的版本. 目前pyinstaller 只支持2.3 - 2.7。 不支持python.3
py3study
2020/01/09
1.1K0
一文学会使用 PyInstaller 将 Python 脚本打包为 .exe 可执行文件
👋 你好,我是 Lorin 洛林,一位 Java 后端技术开发者!座右铭:Technology has the power to make the world a better place.
Lorin 洛林
2023/12/13
5.7K0
[一个小问题]Mainfest配置文件的version问题小结
宋凯伦
2018/01/04
1.1K0
Windows下多个Python版本共存
首先,从官网下载Python的Windows安装版本,进行安装。安装的时候勾选添加系统环境变量选项,或者你自己安装完了以后,进行环境变量的添加。比如:我安装的是64位的Python 2.7和32位的P
卡尔曼和玻尔兹曼谁曼
2019/01/22
1.8K0
Windows下多个Python版本共存
C#引用C++的链接库文件报错 应用程序无法启动,因为应用程序的并行配置不正确 解决办法
完整的错误是这样的 无法加载 DLL“xxx.dll”: 应用程序无法启动,因为应用程序的并行配置不正确。有关详细信息,请参阅应用程序事件日志,或使用命令行 sxstrace.exe 工具。 (异常来自 HRESULT:0x800736B1)
ClearSeve
2022/02/11
2K0
Mysql系列之绿色版服务端部署教程
今天在公司想跑一个项目,需要装mysql,所以随意去官网找了一下并没有找到exe版本的安装软件,只有需要自己部署配置的版本,本来想继续找,不过觉得花时间,就没继续找了。 之前没用过绿色版本的mysql服务端,以为很快可以装好,没想到还是花了一点时间,主要是部署配置过程问题一个接一个,不过觉得还是挺有意思的,所以做一下记录,下次遇到就可以很快解决。
SmileNicky
2022/05/07
4200
应用程序正常初始化(0xc015002)失败解决方法
VS2005 sidebyside manifest error Microsoft.VC80.MFC Microsoft.VC80.CRT Microsoft.VC80.MFCLOC msvcr80.dll mfc80.dll eventlog VC2005 编译出来的程序文件,採用了manifest方式来指定dll文件。对于win98、win2000系统,把exe文件和VC的 dll连接库放到一起就 成了。对于winxp、win2003系统就要麻烦的多了,VC的连接库默认是被放到了winsxs文件夹下,结果造成在这些系统上,直接拷贝exe文件, 往往是不能执行(找不到msvcr80.dll、mfc80.dll文件等),或者在事件日志中报错。
全栈程序员站长
2022/07/14
9290
Visual Studio 2008 集成SP1补丁
/E ——– 复制目录和子目录,包括空的。与 /S /E 相同。可以用来修改 /T。
全栈程序员站长
2022/09/07
1.2K0
浅谈 Qt 静态编译
本文要讲解的是Qt 静态编译,Qt中默认的应该是动态编译,那么本文就浅淡的介绍一下静态编译,先来看内容。
用户3519280
2023/07/06
1.3K0
MySql5.7绿色版服务端安装部署教程
官网下载链接:https://dev.mysql.com/downloads/mysql/5.7.html
SmileNicky
2022/01/04
9710
MySql5.7绿色版服务端安装部署教程
win7 x64 depends msvcr80.dll找不到
1.vc2008redist_x86,vcredist_x86都已经安装,vs05也已经正确安装
雪影
2018/08/02
1K0
windows 10编译YOLOv4,包括exe和d
参考前文 windows 10安装CUDA和cuDNN,地址是:https://xugaoxiang.com/2019/12/18/windows-10-cuda-cudnn/, 这里不再赘述。
AI算法与图像处理
2021/04/21
1.5K0
windows 10编译YOLOv4,包括exe和d
pip安装mysqlclient报错的解决
Windows 环境下安装python包经常会有各种环境方面的问题及报错。 最近在python36/37下升级安装mysqlclient包时产生了下面的错误,不论是百度还是Stack Overflow上查找都没有真正的解决方案,于是写文章与大家一起分享下这类报错的解决方法。
全栈程序员站长
2022/11/17
2.7K0
pip安装mysqlclient报错的解决
相关推荐
pyinstaller
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档