【发布时间】:2016-03-17 01:25:06
【问题描述】:
我创建了一个 exe 文件,它在某些 Windows 机器上运行良好,而在其他机器上却失败了。
我还没有找到失败的原因。
重要数据:
- x64 exe
- Windows 7
- Python 3.5.1
- pyinstaller 3.0
- 一个文件
DEBUG 显示如下:
C:\temp\r>mytool_debug.exe
PyInstaller Bootloader 3.x
LOADER: executable is C:\temp\r\mytool_debug.exe
LOADER: homepath is C:\temp\r
LOADER: _MEIPASS2 is NULL
LOADER: archivename is C:\temp\r\mytool_debug.exe
LOADER: Extracting binaries
LOADER: Executing self as child
LOADER: set _MEIPASS2 to C:\temp\_MEI55762
LOADER: Setting up to run child
LOADER: Creating child process
LOADER: Waiting for child process to finish...
PyInstaller Bootloader 3.x
LOADER: executable is C:\temp\r\mytool_debug.exe
LOADER: homepath is C:\temp\r
LOADER: _MEIPASS2 is C:\temp\_MEI55762
LOADER: archivename is C:\temp\r\mytool_debug.exe
LOADER: SetDllDirectory(C:\temp\_MEI55762)
LOADER: Already in the child - running user's code.
LOADER: manifestpath: C:\temp\_MEI55762\mytool.exe.manifest
LOADER: Activation context created
LOADER: Activation context activated
LOADER: Python library: C:\temp\_MEI55762\python35.dll
Error loading Python DLL: C:\temp\_MEI55762\python35.dll (error code 127)
LOADER: Back to parent (RC: -1)
LOADER: Doing cleanup
LOADER: Freeing archive status for C:\temp\r\mytool_debug.exe
还有一个错误信息显示在一个窗口中:
Entry Point Not Found
The procedure entry point ucrtbase.terminate could not be located in the dynamic link library api-ms-win-crt-runtime-l1-1-0.dll
当我将所有文件从 C:\temp_MEI55762(引导加载程序提取所有文件的位置)复制到目录 C:\temp\r(mytool_debug.exe 所在的位置)并执行 mytool_debug.exe 时,它可以工作。
如前所述,mytool.exe 在其他 Windows 7/8 计算机上运行良好。由于上述错误,我找到了 2 台计算机。
我应该从哪里开始搜索?
【问题讨论】:
标签: windows pyinstaller