Visual StudioC++新特性--MFC王者归来(3)MFC新功能-基于windows7的重启管理灾难恢复

本文介绍了Visual Studio C++2010中MFC对Windows 7的重启管理器支持,该功能可在软件更新和崩溃后恢复应用程序状态,包括自动保存的文档。MFC应用程序向导提供了相关选项,开发者可以通过设置CWinApp类的成员变量来启用重启管理器支持。文中还通过一个测试程序展示了如何使用Restart Manager API模拟软件更新后的重启恢复过程。

为了提高用户体验,让用户用起来感觉比较爽,Microsoft在Windows Vista系统中首先引入了重启管理器(Restart Manager)。

就类似office2007的自动保存功能,一旦出了故障,可以恢复自己的工作成果,不至于让自己工作成果因为故障而丢失。

它可以帮助应用程序维护其当前运行状态,当软件更新后需要重新启动,或者是遇到非常严重的问题崩溃后,可以重新启动软件并且恢复到软件的当前工作状态。更重要的是,它还可以恢复自动保存的软件数据状态,尽量保证用户数据的安全。有了重启管理器,软件就可以很快地从灾难中恢复过来,实现快速“灾后重建”。

微软平台产品及服务部门总裁Jim Allchin向eweek透露,如果一个应用程序或操作系统本身需要更新,安装器就会唤出Restart Manager。Restart Manager负责查看是否能清除操作系统的相关部分,以更新它。如果可以的话,系统就不必重新启动了。
 在即将王者归来的Visual c++2010在MFC增加了Restart Manager支持。
重启管理器主要应用在下面两个方面:
◆软件更新
很多时候,软件或者操作系统升级后,需要重新启动才可以生效。在这种情况下,我们就可以使用重启管理器自动关闭真正运行的软件,然后进行更新,更新完成后自动重新启动软件,并且恢复到软件当前的工作状态。这将使得软件的更新更加流畅和智能。
◆软件灾难恢复
当软件遇到严重错误,进程崩溃的时候,可以使用重启管理器重新启动软件,恢复软件自动保持的数据,让软件可以快速地从灾难中恢复过来。
为了支持重启管理器,微软提供了一套Restart Manassas API函数来完成这些工作。这些函数定义在头文件中,如果你的应用程序想使用这套API,需要引用rstrtmgr.lib和rstrtmgr.dll。其中,我们常用的函数有:
◆RMStartSession
创建一个新的重启任务。
◆RMGetList
这个函数可供安装程序使用,它可以得到所有被影响的应用程序及其当前状态。
◆RMRegisterResources
注册重启任务的资源,例如文件名,服务或者是RM_UNIQUE_PROCESS结构体

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尹成

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值