Я решил попробовать использовать 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, чтобы добавить параметр include, но это не имело никакого значения.
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)