我有一个我们正在部署的Windows CE设备,但我们可以完全控制其上安装的软件。
这不是典型的Windows Mobile设备,这是用户无法与之交互的无头设备。我知道在PDA风格的WinCE设备上,.cab文件是首选的应用程序分发方法。
但是,在无头设备上,我们将编写某种类型的升级/补丁服务器,它将ping服务器以获取更新,下载它们,并在可用时自动安装。
我还想要.cab文件,还是.zip(甚至是别的东西)更好?
.cab文件的要求是什么 - 可能会遇到什么样的限制/要求并令人烦恼?有什么好处?
答案 0 :(得分:1)
我坚持使用CAB作为一个包,因为即使是无头设备也可以使用CAB提取工具。如果你压缩它,那么你必须添加一个ZIP支持库和应用程序。 CAB还能够添加注册表项并定义比zip更多的不同目标位置(我想在\ Windows中使用x.dll但在程序文件夹中使用prog.exe - 尝试使用ZIP)。
要记住的一件事是wceload(CAB提取器)默认使用UI,所以你会想要使用/ noui开关之类的东西。
如果你是真正的无头,这可能不是一个问题(在很长一段时间内没有完成),但一个相当常见的“无头”配置有显示支持,或者显示器没有连接或类似于NOP VGAFLAT驱动程序。这允许您运行shell并可以访问所有漂亮的shell API,但增加了GWES将对话框呈现在不存在的显示上的挑战。
OpenNETCF还有一个CAB Installer SDK,您可以通过创建自己的安装程序应用程序来完全删除任何UI。根据安装的方式和时间(例如通过HKLM \ Init或otehr),这可能有用也可能没用。