使用ce 4.2处理持久存储和冷靴

时间:2009-05-03 12:52:40

标签: windows-mobile compact-framework mobile windows-ce sql-server-ce

我已经花了整个星期五和星期六这个,我的想法已经用完了;

我有一个项目需要在运行windows ce4.2(windows mobile 2003)的符号8146设备上运行sql ce和.net2.0以及我的应用程序所需的符号库。

当设备冷启动时,用户分区中的所有内容都将被删除。 在过去,我使用了符号memcapture实用程序来解决这个问题,但这次它说设备上没有足够的空间。

问题是8146只有超过7 MB的非体积存储,我需要恢复10-12 MB的数据(到目前为止)

还有其他人遇到过这个并解决了吗?我想我需要编写一个小应用程序,在设备启动时运行并检查所有内容的状态,然后在需要时将内存从紧凑型闪存卡复制回主内存。

我不知道如何编程访问CF卡,所以我有点难过。

还有两个来自符号的应用程序听起来可能会有所帮助:regmerge.dll和copyfiles - 它们只能在冷启动时运行。

只有10.2兆字节的东西需要坚持,我知道我可以以某种方式解决这个问题!

我将在周一早上致电符号技术支持并发布我在此提出的任何解决方案(如果有的话)。

同时有任何想法吗?

谢谢,

更新:我已经在一夜之间订购了一张CF卡,摩托罗拉已经开了一个案例 - 我应该在星期二再找一些东西。

3 个答案:

答案 0 :(得分:2)

设备是否始终连接?

您可能需要考虑不要尝试将所有内容保留在设备本身上,并编写一个小型引导过滤器程序,该程序将通过无线网络联系Web服务器以关闭其余的程序/数据文件。

或者,您可以询问Symbol / Motorala有关AirBeam的信息。 AirBeam是他们的软件包部署解决方案。在设备的每次启动时,它将检查包的更新。

如果您确实要求设备在脱机时重新构建,则需要使用上面提到的Compact Flash卡路由以及一个引导程序,以确保安装所需的每个项目。

答案 1 :(得分:1)

您可以进一步压缩数据吗?

答案 2 :(得分:1)

以下是一个应该处理此问题的小批处理文件,请注意您可能需要查看路径名称:

enter code here

ECHO OFF
REM ----------------------------
REM安装符号库:
REM ----------------------------
如果不存在“\ Windows \ AppMgr \ Symbol Managed Class Libraries.DAT”复制“\ Storage Card \ symbol.all.arm.cab”\ Temp \ symbol.all.arm.cab IF EXIST \ Temp \ symbol.all.arm.cab \ windows \ wceload.exe / noaskdest \ Temp \ symbol.all.arm.cab

REM ----------------------------
REM安装.NET Framework 2.0
REM ----------------------------
如果不存在“\ Windows \ AppMgr \ Microsoft .NET CF 2.0.DAT”复制“\存储卡\ NETCFv2.wce5.armv4i.cab”\ Temp \ NETCFv2.wce5.armv4i.cab
IF EXIST \ Temp \ NETCFv2.wce5.armv4i.cab \ windows \ wceload.exe / noaskdest \ Temp \ NETCFv2.wce5.armv4i.cab

在我拿到一张小型闪存卡之前我无法测试这个(订购时 - 最好买一个本地的149.00 .. naaa ......)

- 乔

请注意,我不确定您是否需要确保在开发时使用命令处理器 - 在我测试/验证所有内容后,我将在此处发表评论。