4

我正在寻找有关如何设置 Windows CE 6.0 设计图像以集成我的自定义应用程序的解决方案。

我希望在构建映像并在目标机器上启动它之后能够从 \Hard Disk\Program Files\CustomApp 文件夹访问我的应用程序。

此外,我要求应用程序是持久的。重启后不能丢失。

我知道将应用程序从 NK.BIN 复制到硬盘,但如果可能的话,我想要一个解决方案,比如将 dll 或其他文件添加到 Windows 文件夹。

我将 SQL CE 数据库与应用程序一起使用,因此我希望数据也能够持久化。

提前致谢。

4

1 回答 1

5

如果 \Hard Disk 文件夹的内容不是持久的(我假设它们不是因为你在问这个问题),那么让应用程序“持久”只能作为一个简单的技巧来完成,就像Windows 文件夹的内容。在启动时,操作系统将扩展到 RAM,如果您已将应用程序包含在该操作系统中,它也会被提取。

首先,您必须通过将应用程序文件(exe、dll、所有依赖项等)添加到 BIB 文件中来将它们包含到OS 映像中。

接下来,您必须了解所有文件都被提取到 \Windows 文件夹。没有例外。如果您想将它放在不同的文件夹中,则必须使用 DAT 文件来告诉操作系统将其放在哪里,因为操作系统已被提取。请注意,DAT 文件是一个副本,而不是移动,因此如果您想要它在其他地方,您将在设备上拥有该应用程序的两个副本。一个典型的解决方案是使用 DAT 文件来放置快捷方式,而不是完整的副本。

你问题的最后一部分是困难的,或者可能是不可能的部分。您的数据库不会持续存在。您可以在操作系统中包含一个副本,但是每次硬重置时,都会复制一个新的数据库副本,就像构建操作系统时一样。没有新的数据会存在。

为了让它工作,你需要在设备上建立一个持久的文件存储。如果您是 OEM,您可以使用任何剩余的板载存储(操作系统映像文件所在的位置)或单独安装的 USB/CF/SD/HDD 媒体来实现一个。你如何做到这一点高度依赖于硬件和 BSP,而且它比 SO 上描述的要复杂得多。在不了解目标设备的情况下,甚至很难给你任何关于从哪里开始的指针。这是 Flash 存储的一个非常通用的起点

于 2012-04-06T14:23:00.070 回答