Pygame在Windows中出现错误:ImportError: DLL加载失败

9

我刚刚安装了PyGame 1.9.1(到现有的Python 2.6.4上)。Python和它的标准库可以正常工作,但是存在一个问题,就是Python甚至无法正确地找到pygame模块。

Traceback (most recent call last):
  File "C:\foo\bar\firstGame.py", line 2, in <module>
    import pygame
  File "C:\python264\lib\site-packages\pygame\__init__.py", line 95, in <module>
    from pygame.base import *
ImportError: DLL load failed: The specified module could not be found.

为什么会发生这种情况?谷歌搜索得到以下回复,但均无效: 有没有人解决过win + pygame的问题?
谢谢
EDIT:根据要求添加更多信息:
- Windows版本:Windows Vista(定期更新)
- 使用的安装程序:Windows MSI安装程序
- 安装对象:所有用户
- C:\python264\lib\site-packages\pygame中的文件数目:

  • DLL:14
  • PYD:34
  • PY:19
  • PYC:1

可能缺少的重要信息包括:您安装了哪个软件包(可能是Windows .msi安装程序)? 您是为所有用户安装还是仅为自己安装? 您正在运行哪个版本的Windows? 在pygame文件夹中,您有多少个.pyd文件和.dll文件? - Peter Hansen
是的,我编辑了问题以添加这些信息。 - bguiz
7个回答

4

你确定你已经为Python 2.6安装了pygame吗?2.5版本将无法工作并产生此错误消息,因为pyd文件找不到Python 2.5 dll。


你pygame的安装程序叫什么?请检查一下是不是:http://pygame.org/ftp/pygame-1.9.1.win32-py2.6.msi否则,你可以使用dependencywalker检查pyd(.dll)文件,看看缺少哪些类型的dll。 - tillsten
谢谢Tillsten,当我完全清除了现有的安装,并使用这个安装程序重新安装后,我的问题得到了解决。 - bguiz

3

我在Windows 64位系统上遇到了这个错误。我卸载了Python 3.4.1,然后安装了python-3.4.1.amd64.msi和pygame-1.9.2a0.win-amd64-py3.4.exe,下载链接如上所述。这样就可以解决问题了。


2
如果您正在运行64位版本的Windows,并且使用64位的Python,那么Pygame网站上的默认安装程序似乎无法正常工作。
Pygame网站引导我到这里:有一些适用于64位Windows和Python 2.7的预发布二进制文件,可以在http://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame找到。

1
这实际上也发生在我的安装中。我已经安装了Python 2.6.6,但是安装并没有包括Pygame。我下载了Python 2.6的Pygame 1.9.1,并确定了目录的位置,安装似乎成功了。然而,在IDLE中,我输入import pygame,并收到了最初发布的错误。

0

要检查确切缺少哪些DLL,请使用类似Python控制台的CMD。它将显示一个弹出消息,指示缺少的DLL。Pygame对我有效。


我可以在Python的控制台(IDLE)上运行,而不会出现任何弹出窗口。我该如何触发这个弹出消息?就像我所说的,Python与其标准库一起工作得很好,但是当我从pygame导入时,堆栈跟踪(发布在问题中)会出现。 - bguiz
在您的快捷方式列表中尝试选择标有 Python 命令行(而非 IDLE)的选项。 - whatnick
谢谢,我已经通过使用由tillsten提供的pygame新安装解决了这个问题。 - bguiz

0

我曾经遇到过完全相同的错误,但是我运行了一个小程序,发现它使用pygame而没有使用IDLE(通过保存代码,然后双击.py文件),这样就可以完美地工作了。


0

我曾经遇到过这个错误,经过多次挖掘发现,Python解释器的版本必须与安装的pygame版本相匹配。

如果你有一个不正确的组合,最好的办法是通过开始菜单 -> 控制面板 -> 卸载程序来卸载已有的程序。

一个可行的组合(按照以下顺序安装)-

Python 3.2.5 - Msi下载此文件适用于Windows Vista 32位-

www.python.org/download/releases/3.2.5/ - Windows x86 MSI Installer (3.2.5) <- 此链接,在页面中部位置

Pygame - pygame.org/download.shtml -

pygame-1.9.2a0.win32-py3.2.msi <- 此下载链接,在页面顶部列表的底部。

现在,您应该能够通过从开始菜单中找到Python文件夹来打开IDLE(默认的开发环境)。一旦它打开了,输入“import pygame”。希望您不会遇到任何错误,并且pygame已经被正确导入。祝您在编程方面好运。

如果您对IDLE环境不满意并想使用其他工具,我个人使用LiClipse IDE。我没有推广,但可以通过Google搜索找到它;)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接