【发布时间】:2021-02-02 02:33:13
【问题描述】:
我正在尝试在运行 Windows CE 8.00 的机器上启动一个 .exe 文件。
.exe 文件是在 PyInstaller (https://www.pyinstaller.org/) 的帮助下生成的,它将我的 Python 脚本转换为这样的文件。我使用一台运行 Windows 10 的笔记本电脑进行此操作。
.exe 文件在其他笔记本电脑(也包括 Windows 10)上按预期运行,但是当我尝试在使用 Windows CE 8.00 的预期机器上运行它时,我收到一条错误消息:File.exe 不是有效的 Windows Embeded Compact 应用程序。
机器信息:
- Windows 8.00 Build 6270
- 处理器类型:AMD Steppe Eagle
我完全不知道从哪里开始寻找替代解决方案。网上关于这个话题的资料不多。
我已尝试下载 Python CE (https://sourceforge.net/projects/pythonce/),但在启动 .exe 文件进行安装时,我收到与以前相同的错误消息:*... 不是有效的 Windows Embeded Copact 应用程序” .
【问题讨论】:
-
错误很明显。该可执行文件不是为 Windows CE 构建的。 Windows CE 是 Windows 的嵌入式 版本,这意味着它针对每个设备的硬件量身定制,可以在 x86 或 ARM 上运行,并且仅包含设备制造商选择的驱动程序并提供一组有限的 API。咖啡机毕竟不需要网卡,因此包含网络堆栈是没有意义的。当大多数 API 和库不存在时,您无法在嵌入式设备上使用为 Windows 构建的可执行文件
-
顺便说一句,Linux 也会有同样的(如果不是更糟的话)问题。您必须编译您的应用程序以在设备制造商创建的特定自定义发行版上运行,而不能像使用 Windows CE 那样使用预定义的目标平台。
-
对于 Python CE - 这是一个 13 年历史的程序,保证不会在任何现代 Windows CE 版本上运行。屏幕截图来自掌上电脑(即 PDA)时代——甚至在 iPhone 之前。这也更像是一个概念验证,因为 Python(以及任何解释性语言)对于当时的嵌入式设备来说太慢了。
-
不是用通用语言为通用平台创建程序,然后尝试将其硬塞到嵌入式设备中,您必须从另一端开始。找出该设备支持的内容、可用的工具并使用它们,而不是您的通用语言。你不是在建立一个网站。主要驱动因素不是程序员的生产力,而是性能、效率和功耗。
标签: python windows exe pyinstaller windows-ce