2016-02-05 63 views
1

我有一个为wince 5.0开发的应用程序。 EXE大部分时间都正常工作。但是,如果测试人员对Pocket PC进行warmboot并运行EXE,则会出现错误。找不到* .exe(或它的一个依赖项)win ce错误

找不到* .exe(或其组件之一)。确保路径和 文件名是正确的,并且所有必需的库都是 可用。

如果他们点击“ok”作为错误消息,EXE将正常工作。我们无法发布此错误消息的应用程序。有人知道为什么会发生这种情况,以及如何解决它?

+0

在错误消息中单击的exe文件无法找到?你的exe位于何处?你是从windows-explorer启动它,然后双击?你确定这是一个warmboot,而不是冷启动,一切都安装完毕吗?当未安装紧凑框架或缺少某些其他依赖关系(dll)时,可能会出现此错误。 – etalon11

回答

1

我只能想象该exe使用的API或DLL在重新启动后还没有准备好。某种竞速条件。

当Windows CE/Mobile启动时,并不是所有API和DLL都立即加载。 StartUp进程并行处理几个驱动程序和进程。如果依赖于另一个API/DLL的应用程序自动启动,它应该检查是否所有需要的资源都已准备好。 isAPIready()参见https://msdn.microsoft.com/en-us/library/ms885686.aspx

如果exe从外部存储卡(或辅助卷)自动启动,则可能会发生另一个可能的问题。内存驱动程序可能尚未完全加载并且无法找到exe。

上面假设你从init或StartUp启动exe。如果进程尝试加载DLL(外部运行时)或OS未找到的API,则通常会出现错误消息。

相关问题