首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装pywin32时出现问题

安装pywin32时出现问题
EN

Stack Overflow用户
提问于 2011-07-12 18:10:26
回答 11查看 42.9K关注 0票数 7

我正在尝试安装Python2.6的pywin32。我安装了python,但它不在普通的c:驱动器中,而是在d:驱动器上。pywin32安装程序找不到它,我也不能给它提供自定义路径。

我检查过了,path文件夹就是路径。有没有解决这个问题的办法?

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2011-07-12 18:28:52

来自pywin32自述文件

如果安装过程通知您在注册表中找不到Python,那么几乎可以肯定的是,您下载了错误的版本-要么是下载了错误的Python版本,要么是下载了错误的“not”。

你确定你得到了适合你的python和cpu架构的正确版本吗?如果您这样做了,但是不起作用,您可以尝试从源代码构建,我认为可能有一个命令行标志,允许您指定python安装位置。

票数 15
EN

Stack Overflow用户

发布于 2015-10-31 01:06:21

更新2017-06-14似乎在Python3.6中再次出现了同样的问题。但是我发现了一个很好的建议:有一个pywin32的pip版本:

pip install pypiwin32

它没有安装最新版本(sourceforge目前有221个,安装了220个),但它可以在没有修改注册表或任何其他黑客的情况下工作。

更新2017-02-01:我刚刚尝试了在Windows10 (64位)上使用Python3.5.2 32位安装Build220,没有注册表,一切都工作得很好,需要修改注册表。因此,最好的建议可能是使用最新的构建,而不是构建219。

旧解决方案(Build219):

今天,当我尝试在Windows8.1下安装pywin32和Python3.5 win32时,也遇到了同样的问题。

py 3.5的所有安装程序(内部版本219)都失败了,并且在Jesus和lauren alsina的帖子中描述的修改注册表并没有解决这个问题。

我的诀窍不是在HKEY_LOCAL_MACHINE中添加注册表项,而是在HKEY_CURRENT_USER中添加注册表项,将PythonCore中的python版本从3.5-32更改为3.5

有趣的是,使用Python键,64位安装程序可以正常工作,但当然您会遇到问题,因为安装的64位库与32位3.5-32不兼容。在这个安装程序中有一些东西是很坏的。

所以总而言之,我的Python3.5 w32的工作.reg文件如下所示:

代码语言:javascript
复制
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Python]

[HKEY_CURRENT_USER\SOFTWARE\Python\PyLauncher]
"InstallDir"="C:\\Windows\\"
"AssociateFiles"=dword:00000001
@="C:\\Windows\\py.exe"

[HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore]

[HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5]

[HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5\Help]

[HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5\Help\Main Python Documentation]
@="C:\\Program Files (x86)\\Python 3.5\\Doc\\python350.chm"

[HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5\Idle]
@="C:\\Program Files (x86)\\Python 3.5\\Lib\\idlelib\\idle.pyw"

[HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5\IdleShortcuts]
@=dword:00000001

[HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5\InstalledFeatures]
"dev"="3.5.150.0"
"Shortcuts"="3.5.150.0"
"exe"="3.5.150.0"
"lib"="3.5.150.0"
"test"="3.5.150.0"
"doc_shortcut"="3.5.150.0"
"doc"="3.5.150.0"
"tools"="3.5.150.0"
"tcltk"="3.5.150.0"
"pip"="3.5.150.0"
"path"="3.5.150.0"

[HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5\InstallPath]
@="C:\\Program Files (x86)\\Python 3.5\\"
"ExecutablePath"="C:\\Program Files (x86)\\Python 3.5\\python.exe"

[HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5\InstallPath\InstallGroup]
@="Python 3.5"

[HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5\PythonPath]
@="C:\\Program Files (x86)\\Python 3.5\\Lib\\;C:\\Program Files (x86)\\Python 3.5\\DLLs\\"
票数 16
EN

Stack Overflow用户

发布于 2014-04-11 17:23:54

我也有同样的问题:

在64位Windows上,32位应用程序在以下位置注册:

1个HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Python

我估计安装程序希望在以下位置找到Python:

2个HKEY_LOCAL_MACHINE\SOFTWARE\Python

使用regedit和local admin权限,您可以导出.reg文件% 1,删除找到的所有"Wow6432Node\“,然后将其导入为%2

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6662536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档