进口;rtmidi_python“;模块给出;ImportError:DLL加载失败:找不到指定的模块;
我在尝试导入rtmidi python时遇到了一个问题(由于缺乏信誉而删除了指向包索引页的链接): win32上的Python 3.5.1(v3.5.1:37A07CEE59692015年12月6日01:38:48)[MSC v.1900 32位(英特尔)] 有关详细信息,请键入“copyright”、“credits”或“license()”。 >>>导入rtmidi_python 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 导入rtmidi_python 导入错误:DLL加载失败:Das angegebene module wurde nicht gefunden。 “Das angegebene module wurde nicht gefunden”翻译为“找不到指定的模块” 这些包是从上找到的.whl文件安装的,以避免需要一个运行的C/C++编译器(据我所知),因为通过pip从索引安装包总是会给我“vcvarsall.bat”错误。 (我曾尝试以各种方式修复一些问题,但没有成功,但详细说明这一点不在本线程的主题范围内。) 因此,我求助于使用.whl文件。 由于我使用Windows 7 32位,并且安装了Python 3.5.1 32位,因此我使用“rtmidi_Python-0.2.2-cp35-none-win32.whl”进行了pip安装。这似乎奏效了,软件包显然已经安装好了。但是当尝试导入rtmidi_python时,我总是会给出上面的错误进口;rtmidi_python“;模块给出;ImportError:DLL加载失败:找不到指定的模块;,python,windows,dll,pip,importerror,Python,Windows,Dll,Pip,Importerror,我在尝试导入rtmidi python时遇到了一个问题(由于缺乏信誉而删除了指向包索引页的链接): win32上的Python 3.5.1(v3.5.1:37A07CEE59692015年12月6日01:38:48)[MSC v.1900 32位(英特尔)] 有关详细信息,请键入“copyright”、“credits”或“license()”。 >>>导入rtmidi_python 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 导入rtmidi_python 导入错误:DLL加载失败:
- 我试过从方向盘上重新安装软件包好几次,都没有用。每次都会出现同样的错误
- 我曾尝试通过pip升级包,但它是最新的
- 因为根据我在这个网站和其他地方的发现,输入恐怖不是一个普遍的错误,而是在每一个例子中都有一个具体和不同的原因;我已尝试跟踪可能丢失的特定.dll文件。由于通过.whl安装rtmidi python只会将其放在“..\site packages\”通常的“..dist info”文件夹(如“rtmidi_python-0.2.2.dist info”)和一个名为“rtmidi_python.cp35-win32.pyd”的.pyd文件中,我认为后者是问题的原因。经过一段时间的搜索,我发现这样一个文件可以使用Dependency Walker进行检查。下面是出现的情况:
若我无意中遗漏了解决问题所必需的任何信息,我将根据需要提供这些信息。安装32位(x86)版本的This确实解决了问题!但是为了阐明它的一个重要方面:在安装RTMIDyPython作为.WL之前,需要安装VisualStudio 2015的VisualC++。因此,即使两者都安装了,但在安装rtmidi python之后安装了可再发行版本,它也不会工作。我不能确定,因为我尝试了很多事情,但如果做了相反的事情,即使只是重新安装rtmidi python也可能不起作用。在我的例子中,我需要卸载这两者,然后重新安装可再发行文件;最后,重新安装rtmidi python。
Python 3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:38:48) [MSC v.1900 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import rtmidi_python
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
import rtmidi_python
ImportError: DLL load failed: Das angegebene Modul wurde nicht gefunden.