python - cx_freeze 不导入外部模块

标签 python pywin32 cx-freeze pyhook

我选择尝试使用 cx_freeze,它将我的简单 python 3.x 键盘记录器转换为 exe。我选择 cx_freeze 因为 py2exe 只是 python 2.x 我正在使用这个 setup.py 脚本编译我的代码。

from cx_Freeze import setup, Executable

# Dependencies are automatically detected, but it might need
# fine tuning.
buildOptions = dict(packages = [], excludes = [])

base = 'Console'

executables = [
    Executable('logger.py', base=base, targetName = 'logger.exe')
]

setup(name='PyLogger',
      version = '0.1',
      description = 'A Simple Keylogger',
      options = dict(build_exe = buildOptions),
      executables = executables)

当我编译我的代码时,我是

try:
    import pythoncom
except ImportError:
    input("Import Error, pywin32 is not installed")

try:
    import pyHook
except ImportError:
    input("Import Error, pyHook is not installed")

我收到导入错误,提示未安装 pywin32 和 pyHook。如何将外部模块导入 cx_freeze.

编辑 - 我尝试更改 setup.py 以添加 includes 选项,但没有任何区别。

from cx_Freeze import setup, Executable

# Dependencies are automatically detected, but it might need
# fine tuning.
buildOptions = dict(packages = ['pyHook','pythoncom'],includes = ['pyHook','pythoncom'], excludes = [])

base = 'Console'

executables = [
    Executable('logger.py', base=base, targetName = 'logger.exe')
]

setup(name='PyLogger',
      version = '0.1',
      description = 'A Simple Keylogger',
      options = dict(build_exe = buildOptions),
      executables = executables)

最佳答案

找到外部模块的.pyd文件。将其复制并粘贴到构建文件中。因此,例如,如果它正在寻找 _cpyHook(我和你有同样的问题,它说模块丢失),请转到 C:\Python33\Lib\site-packages\pyHook 并将文件复制并粘贴到 C :\Python33\build\exe.win-amd64-3.3.

关于python - cx_freeze 不导入外部模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22074774/

相关文章:

python - Pandas 按标签查找内容不起作用

python - PyWin32、Excel 和 "doing no damage"到现有系统

python - 如何在 Windows 7 中安装 pywin32 模块

python - 如何从 python 3.3 的 cx_freeze(或安装程序)创建一个多合一的 exe 文件

python - 对于Python open()函数,什么更高效?

javascript - 如何从符合特定条件的 HTML 中找到 CSS 选择器?

python - Google App Engine (GAE) 中的线程或后台进程

python - Pywin32 将 .docx 保存为 pdf

python - cx_freeze 不允许我使用 librosa Python3 制作图形用户界面

python - 打开cx_freeze构建的exe文件时出错