2、优化应用程序在Windows 7下的体验与性能
能够正常运行只是第一步,改善程序性能、优化用户体验就是锦上添花了,特别是要充分适应Windows 7的一些新变化。
(1)、超级任务栏
Windows 7的超级任务栏可以用更直接的方式为用户提供更多信息,比如弹出菜单(Jump List)就可以显示相关程序最常用的功能,这就需要软件的配合了。
参考资料:
http://windowSteamblog.com/blogs/developers/archive/2009/06/18/developing-for-the-windows-7-taskbar-application-id.aspx
(2)、库(Library)
作为访问用户数据的首要入口,库在Windows 7里是用户指定的特定内容集合,和文件夹管理方式是相互独立的,分散在硬盘上不同物理位置的数据可以逻辑地集合在一起,查看和使用都更方便。
参考资料:
http://windowSteamblog.com/blogs/developers/archive/2009/06/11/windows-7-programming-guide-libraries.aspx
(3)、触发式启动服务
Windows 7的任务控制管理器已经进行了拓展,在特定系统事件(触发)发生之后,系统服务可以自动开始或停止。这样一来,服务就无需开机自启动了,可以等到需要的时候再开始,从而大大节省系统资源并加快开机速度。
参考资料:
http://msdn.microsoft.com/en-us/library/dd405513(VS.85).aspx
(4)、电源管理优化
Windows 7提供了新的基础架构和工具,可以让开发人员轻松判断自己的程序对耗电或节能的影响,并有一系列的事件回调,让程序在系统运行于电池的时候降低活跃度,并在切换到AC供电后自动恢复。
(5)、故障排除平台
一直以来,Windows都会在出现问题的时候给用户提供一些解决方案供参考,但大多形同鸡肋,而Windows 7在这方面大大增强,使用基于PowerShell的机制来诊断、解决问题。Windows 7的故障排除平台和PC解决方案衷心无缝集成,让应用程序的故障诊断更统一、更简单。
参考资料:
http://msdn.microsoft.com/en-us/library/dd323778(VS.85).aspx
(6)、Windows错误报告(WER)
Windows错误报告是一系列技术,可以捕获软件崩溃数据,用于相关信息的实时反馈。通过Winqual服务,软件和硬件厂商可以访问这些报告,用来分析和解决问题,发布相关补丁或者进行软件升级。
参考资料:
http://www.microsoft.com/whdc/maintain/StartWER.mspx
(7)、I/O优化
I/O优先级可以在不明显消耗系统资源的情况下改善响应速度。如果程序没有进行I/O优化,可能会占用大量资源,给系统增加额外负担。
(8)、重启管理器
这种技术可以自动完成崩溃后重启,并在不重启整台机器的情况下完成程序和系统的更新。如果软件不幸崩溃,重启管理器就给了保存关键信息的二次机会,Windows会自动重新启动程序,并尝试载入之前保存的信息;系统完全重启的次数也会大大缩小,实在需要的话Windows也会在系统重启后尽量重启相关程序,并使之返回重启前的状态。