Python导入错误“DLL load failed” | Python

8

我正在使用IIS6 Web服务器托管Django应用程序。

测试服务器运行正常,但在Web服务器后运行时,当模块无法导入时,我会遇到以下错误:

加载pyodbc模块时出错:DLL加载失败:指定的模块无法找到


仅供记录,该模块是pyodbc

该网站使用isapi-wsgi通过isapi提供服务


任何想法?这真的会让我的一天! :)

我没有答案,只是在花费了大量时间搜索和尝试后,我不得不放弃使用IIS。然而,使用apache运行正常。 - PhoebeB
3
你是否使用 Dependency Walker 工具检查过所有的 DLL 文件是否正常? - luc
我在 Windows 10 上运行时遇到了同样的问题:当尝试 import pyodbc 时出现了 ImportError: DLL load failed: The specified procedure could not be found. 的错误。我对 Windows 不是很熟悉 - 我该如何使用 DependencyWalker 检查依赖项呢? - NoIdeaHowToFixThis
4个回答

4
这个错误很讨厌:通常是由于dll中缺少符号(因为未找到依赖的dll等)引起的。您应该使用Dependency Walker检查.pyd文件,或查看Windows日志(根据您的配置可能会记录此类错误)。

那帮了我很大的忙。对我来说,缺失的 DLL 文件是:MSVCR90.DLL、IESHIMS.DLL 和 WER.DLL。 - cethegeek

1

我最近一直在努力在Windows 2008上的IIS 7和MS SQL 2008上设置Django/Python。我遇到了与你相同的问题。我使用的是PyODBC-2.1.8版本,从源代码编译模块时使用了mingw编译器。但是什么都不起作用。

然后我降级到了PyODBC-2.1.7版本。它奏效了!我使用了该网站提供的二进制文件,适用于Python 2.6发行版(这是我正在使用的Python版本)。

希望这可以帮到你。


0

0
在我的情况下,我在32位操作系统上安装了64位的pyodbc。这两个版本都可以在这里找到。
我希望我不是唯一一个这么愚蠢的人,这篇文章能够帮助到其他人。

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