这是许多应用程序,有些非常简单,而另一些则使用其他库。
简短的回答:这取决于。
首先,Windows Mobile仅在ARM上运行,而Windows CE可用于许多CPU架构,包括ARM,x86和MIPS。 因此,必须为ARM构建CE可执行文件。
除此之外,您还需要查看CE可执行文件所依赖的库或组件。 Windows Mobile仅包括Windows CE提供的组件的子集,因此,如果CE可执行文件依赖于Windows Mobile中不存在的组件,则它将无法运行。
Visual Studio附带的dumpbin
实用程序可以向您显示所有函数导入(以及所有静态依赖项),但是,对于复杂的应用程序而言,这可能非常耗时。 还请记住,即使满足了所有这些依赖关系,应用程序仍可能会做出Windows Mobile无法满足的其他假设。
如果您控制源代码,可能要确保Windows CE应用程序也将在Windows Mobile上运行,最简单的方法可能是根据Microsoft提供的SDK之一来构建它-根据目标版本,查找例如Windows Mobile SDK或Pocket PC SDK 。
如果无法访问源代码,并且如果产品文档中未指定任何内容,那么我想说找出给定CE可执行文件是否在Windows Mobile上运行的最实用方法就是尝试。
所以必须为ARM构建CE可执行文件
我认为“经验”用户选择ARM并不总是明智的。
Windows Mobile仅包括Windows CE提供的组件的子集,因此,如果CE可执行文件依赖于Windows Mobile中不存在的组件,则它将无法运行。