风一样的男孩 发表于 2009-6-15 10:16:15

Vista/2008/Win7 启动菜单自动修复工具BCDautofix

1、格式化或GHOST活动分区(C盘)重装系统后添加修复其它分区上的Vista/2008/Win7启动菜单

2、在Vista/2008/Win7上新装2000/xp/2003后添加修复原Vista/2008/Win7启动菜单
   简化出先vista/2008/win7后装2000/xp/2003多系统最简解决方案:2000/xp/2003光盘引导直接装至其它分区,完成后运行本程序修复即可

3、修复其他因BCD相关引起的故障
   3-a:BCD引起的win7/2008r2的修复计算机(Windows Recovery Environment)菜单丢失
   3-b:BCD引起的win7/2008r2的3D启动画面丢失(变成VISTA滚动条启动画面)
   3-c:BCD引起的启动菜单选择界面乱码现象
   3-d:为VISTA/2008添加修复计算机(Windows Recovery Environment)菜单,使用方法:在系统盘符中新建recovery文件夹,再把光盘或安装程序中的sources\boot.wim(这个文件是否改名为winre.wim随意)和boot\boot.sdi两个文件复制至recovery文件夹,再运行本程序,即可自动添加。
   3-e.不明原因的启动菜单丢失

090412更新3-f:
   3-f.极少见的统BCD非法的强制修复,现象:VISTA/2008/WIN7中--运行msconfig后“启动”(BOOT)栏空白,管理员身份运行命令提示符中后运行bcdedit等和BCD相关的操作提示出错,系统属性的“启动和故障恢复”窗口无法配置“默认操作系统”和等待时间。


注:这种故障一般不影响进原系统,但会引起其它软件无法自动添加基于BCD管理的新启动菜单,所以是否要强制修复自行决定。

PS:不在程序适用范围内的朋友就不推荐运行本程序了

使用方法:
非安装软件,直接运行,可运行于32位和64位系统或光盘WINPE系统。程序以盘符形式搜索系统,因此得确保你要添加的系统分区别被隐含盘符。

可以添加修复Vista/2008/Win7启动菜单,在满足条件的情况下也可以添加修复2000/xp/2003启动菜单。例如可以在xp中运行添加其它分区的vista启动菜单,自动生成xp+vista多系统启动菜单,反过来在vista中运行添加xp的启动菜单就需要满足xp的三个必要引导文件(ntldr/ntdetect.com/boot.ini)已存在活动分区且活动分区不被隐藏盘符的情况才会添加(当xp菜单不符合条件而无法添加时,如xp菜单已在原多系统菜单中存在,不会影响已存在的xp启动菜单项)。

程序正确运行后,如果有原始BCD启动配置,将备份在c:\autofix下,以bcdbackup1命名方式,多次运行则数字累加.c:\autofix下的autofix.log是程序运行纪录文件.纪录文件内容仅供参考。

部分更新说明
090416更新:增加支持繁体中文系统
090417(v1.0):修正一些流程,改版本号V1.0
090614(v1.0.2):修改一下打包方式,免去小部分杀软的误报(v1.0和v1.0.1时小部分杀软误报)

不能完全自动修复2000/XP/2003启动菜单的说明:
因为程序注重自动,并且在丢失了Vista/2008/Win7引导文件的情况下一样可以修复.因为程序要尽可能考虑到很多方面存在的可能性,而不是运行后使某种启动故障加重。
如果有高手朋友能帮忙处理我下面的难题,希望不吝赐教。
当2000/XP/2003启动文件丢失时,且运行本程序的WIN7系统把活动分区隐藏时,程序无法复制2000/XP/2003的引导文件至隐含藏盘符的活动分区中(其实这点可以做到判定活动分区是否被隐藏盘符且提示用户为隐藏分区新增盘符后再行运行本程序修复2000/xp/2003启动菜单)
最大的难点在于判定boot.ini中rdisk(x)partition(x)的值
手工判断该值简单(手工判断参看:http://bbs.pcbeta.com/viewthread.php?tid=435850),自动判断该值就很难
如果能处理好这两个情况(或只boot.ini的准确自动生成),程序就可以做到自动修复2000/xp/2003的启动菜单。

XP:运行效果图
页: [1]
查看完整版本: Vista/2008/Win7 启动菜单自动修复工具BCDautofix