不能安装pil_安装PIL遇到的问题

配置:Win7 64位

不过折腾到最后,没有使用PIL,官方的PIL很久木有更新了,换了Pillow,是PIL的衍生吧,一直有更新,但是两者不可在同一环境共存。

1 Python version 2.7 required,which was not found in the registry.

官方下载http://www.pythonware.com/products/pil/,安装PIL,出现如下错误提示,Python version 2.7 required,which was not found in the registry.

解决方案:

1 importsys2

3 from _winreg import *

4

5 #tweak as necessary

6 version = sys.version[:3]7 installpath =sys.prefix8

9 regpath = "SOFTWARE\\Python\\Pythoncore\\%s\\" %(version)10 installkey = "InstallPath"

11 pythonkey = "PythonPath"

12 pythonpath = "%s;%s\\Lib\\;%s\\DLLs\\" %(13 installpath, installpath, installpath14 )15

16 defRegisterPy():17 try:18 reg =OpenKey(HKEY_CURRENT_USER, regpath)19 exceptEnvironmentError as e:20 try:21 reg =CreateKey(HKEY_CURRENT_USER, regpath)22 SetValue(reg, installkey, REG_SZ, installpath)23 SetValue(reg, pythonkey, REG_SZ, pythonpath)24 CloseKey(reg)25 except:26 print "*** Unable to register!"

27 return

28 print "--- Python", version, "is now registered!"

29 return

30 if (QueryValue(reg, installkey) == installpath and

31 QueryValue(reg, pythonkey) ==pythonpath):32 CloseKey(reg)33 print "=== Python", version, "is already registered!"

34 return

35 CloseKey(reg)36 print "*** Unable to register!"

37 print "*** You probably have another Python installation!"

38

39 if __name__ == "__main__":40 RegisterPy()

将如上文件执行,进行注册,之后再尝试安装,成功。

2 DLL load failed:%1不是有效的Win32应用程序

但是之后在使用_imaging模块时又报错:

DLL load failed:%1不是有效的Win32应用程序

是因为安装的Python是64位,PIL却是32位,而官方发布的只有32位,找个非官方的64位安装。

3 如何卸载目前安装的PIL

在PIL安装路径下看到RemovePIL.exe文件,执行失败,提示:This program is normally started by Windoows。

在该路径中可看到PIL-wininst.log,里面有记录卸载的命令,根据提示执行卸载命令即可。

原因:

python有64位的,pil官方只有32位的。安装时会提示找不到python的安装路径。

64位Win7下无法安装PIL库的原因

PIL官方http://www.pythonware.com/products/pil/提供的PIL二进制安装库都是32位的。

64位程序和32位程序检测注册表的位置是不一样的:

64-bit: HKEY_LOCAL_MACHINESOFTWAREPython

32-bit: HKEY_LOCAL_MACHINESOFTWAREWow6432NodePython

我安装的是Python2.7 x64版,所以相关信息是在 HKEY_LOCAL_MACHINESOFTWAREPython下面,32位程序在HKEY_LOCAL_MACHINESOFTWAREWow6432NodePython 下面找Python安装信息,肯定是找不到了。

解决:

幸好有人提供了非官方的64位库(官方源码编译版)。

http://www.lfd.uci.edu/~gohlke/pythonlibs/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值