导入“rtmidi_python”模块会导致“ImportError:DLL加载失败:指定的模块找不到”

我试图导入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. 

“Das angegebene Modul wurde nicht gefunden”翻译为“指定的模块找不到”。

这些软件包是从http://www.lfd.uci.edu/~gohlke/pythonlibs/上find的.whl文件安装的,为了避免必须有一个可用的C / C ++编译器(据我所知),因为通过pip从索引安装包总是会给我“vcvarsall.bat”错误。 (我试图以各种方式解决问题,但没有成功,但详细说明不在此主题内。)

我诉诸使用.whl文件。 由于我在Windows 7 32-bit上安装了Python 3.5.1(32位) ,因此我使用“rtmidi_python-0.2.2-cp35-none-win32.whl”来进行pip安装。 这似乎工作,包显然是安装。 但是,当试图导入rtmidi_python ,我总是会给我上面的错误。

  • 我已经试过几次重新安装包装,但没有用。 每次都会出现同样的错误。

  • 我试过通过pip升级软件包,但是它是最新的。

  • 因为根据我在这个网站和其他地方的发现, ImportError并不是一个普遍的错误,而是在每一个实例中都有一个特定的和不同的原因。 我试图找出什么具体的.dll文件可能会丢失。 因为通过.whl安装rtmidi-python只能放在“… \ site-packages \”中 ,通常的“dist-info”文件夹(如“rtmidi_python-0.2.2.dist-info” )和a。 pyd文件名为“rtmidi_python.cp35-win32.pyd” ,我认为后者是问题的原因。 经过一番search,我发现可以使用Dependency Walker来检查这样的文件。 这是什么来了:

点击此链接查看截图。

“Das System can an die angegebene Datei nicht finden。” 字面上翻译为“系统找不到指定的文件”。 起初,我假设,无视其他文件,MSVCP140.DLL提到一个文件,将安装与Visual Studio 2015或某些,我没有安装。 但经过浏览器search后,在“… \ system32 \”中findMSVCP140.DLL“msvcp140.dll

这是否意味着错误源于rtmidi_python没有被赋予这些文件的正确path? 或者,我试图修复“vcvarsall.bat”错误时,不知何故错误地安装了一些与C / C ++编译器相关的文件? 或者,问题可能在于.whl本身? 我在一些页面上阅读,logging了类似的ImportErrors,它可能源于wheel文件的创build者部分的错误编译。

无论哪种方式,我已经到了一个完全丧失的地步,但在这里寻求帮助。 因为,就我个人而言,这个软件包对于那些想从音乐中获益的非程序员来说可能是非常有用的,我认为让它更易于使用和使用是一件好事。

如果我不小心漏掉了解决这个问题的重要信息,我会根据需要提供。