2016-03-25 72 views
0

我想在MotionBuilder(Autodesk)中使用PyQt4(因为我知道qt真的很好,我不喜欢motionbuilder GUI api)。PyQt ImportError:DLL加载失败

  • 我在Windows 64位
  • 我使用的MotionBuilder 2013(64位)
  • 我安装PyQt4的(64位)为Python 2.7
  • 更新我的路径变量指向PyQt4的dll的位置(C:\ Python27 \ LIB \站点包\ PyQt4的)
  • 当打印sys.path中我可以看到PyQt4的位置
  • 我能做到无差错进口PyQt4的

但是,当我尝试做

from PyQt4 import QtGui 

我得到以下错误

ImportError: DLL load failed: %1 is not a valid Win32 application. 

我尝试安装PyQt的32位二进制文​​件,但得到了同样的结果。我的安装根文件夹中有QtGui4.dll和QtGui.pyd。 所以我出来的想法,任何人都可以帮助我吗?

有别人谁拿到这里几乎同样的问题 PyQt4 import QtCore, QtGui ImportError: DLL load failed: %1 is not a valid Win32 application

+0

阅读此处查看是否有帮助。 http://stackoverflow.com/questions/19019720/importerror-dll-load-failed-1-is-not-a-valid-win32-application-but-the-dlls – idjaw

回答

1

的MotionBuilder 2013只支持Python的2.6和PyQt4的是建立与Python 2.7至少= P

1

的MotionBuilder 2013支持的Qt 4.7和python 2.6 .4(source)。不幸的是,PyQt网站上的所有二进制文件都是用于Qt 4.8+以及Python 2.7和3.x的。 PySide项目仍然有一些old binaries可供下载,它可能有一个可能为你工作(this one maybe)。

你也可以搜索网页,你也许能够找到一个匹配这些版本的二进制文件 - 这里是一个example(我刚刚在谷歌搜索中发现了这个,我不能保证网站的合法性或者下载)。

你可以随时自己编译Qt和pyQt/PySide。我相信您需要使用Visual Studio 2010.

+0

谢谢老兄,它工作得很好! – Narthe

+0

你使用了哪一个? –

0

更新到Motionbuilder 2014或更高版本,它使用Pyton 2.7。 Motionbuilder 2013是Autodesk推出的最差版本之一。

你也需要把PyQt的网站包到本地的MotionBuilder Python发行:

C:\ Program Files文件\欧特克\的MotionBuilder 2016 \ BIN \ 64 \蟒蛇\站点包

为以及sip.pyd(你可以在这里得到:http://nathanhorne.com/compiled-versions-of-pyqt4-x64/在前面的答案中提到)。

相关问题