1

我正在尝试使用 py2exe 创建可执行程序。导入 kinterbasdb 时收到以下错误消息:

Traceback (most recent call last):
  File "AlarmReporter.py", line 13, in <module>
  File "zipextimporter.pyo", line 82, in load_module
  File "kinterbasdb\__init__.pyo", line 119, in <module>
  File "zipextimporter.pyo", line 98, in load_module
ImportError: MemoryLoadLibrary failed loading kinterbasdb\_kinterbasdb.pyd

这是我的 py2exe 非常基本的 setup.py:

from distutils.core import setup
import py2exe
import sys


setup(
        options={'py2exe': dict(bundle_files=1, optimize=2)},
        console=['AlarmReporter.py'],
        zipfile=None,
)

我在理解错误消息时遇到问题,不知道如何修复它。

4

1 回答 1

1

尝试排除 libfbclient dll

将 .py 转换为 .exe 时出错

如果这不起作用,请尝试使用新的 fdb 驱动程序(kinterbasdb 的未来替代品) http://permalink.gmane.org/gmane.comp.db.firebird.python/104 (它不需要只编译libfbclient.dll)

另一种选择是使用不需要 dll 且不需要 c 生成二进制文件的纯驱动程序 https://github.com/nakagami/pyfirebirdsql

但是您将自行承担使用它的风险;)

于 2012-01-17T06:34:35.350 回答