将应用程序从运行嵌入 WinXP 的昂贵且不可靠的专用嵌入式 x86 盒迁移到运行正常 Win7-64 的 COTS 硬件(戴尔 E6410 笔记本电脑)。目前,使用嵌入式 Windows 7 进行部署是不可行的。
问题是,该系统仍然是“嵌入式”的。几乎任何时候电源都可能在没有事先警告的情况下关闭。我们已经剥离了操作系统并移除了电池功能,以便它可以根据需要断电。
该应用程序从不写入磁盘,因此我们不会严重破坏任何内容。在我们的应用程序启动并运行后,系统基本上处于空闲状态(一些计算、图形、TCP/IP 和串行通信除外),因此操作系统很快就会进入非常稳定的状态。
然而,在断电后,它正确地抱怨 Windows 没有成功关闭并向用户显示 Windows 错误恢复文本屏幕。如果不管它,它最终会继续正常启动,但如果可能,我们想跳过这一步。
WinXP-embedded 旨在自动执行此操作,所以我知道这是可能的。我查看了内核开关,但没有看到任何有关“跳过 Windows 错误恢复”的记录。
我还广泛阅读了启动过程:http : //jdebp.eu./FGA/windows-nt-6-boot-process.html
我知道我可以在注册表中禁用自动 chkdsk,但这也不是一回事。
那么,我如何简化启动过程,以免用户遇到正常情况下的麻烦?