Win7启动过程及启动项修复详解
解决win7系统下启动和故障恢复早期Windows选项

解决win7系统下启动和故障恢复早期Windows选项
删除的方法较多这里只介绍自己熟悉的两种:
方法一:
1、右键“我的电脑”选择“属性”选项;
2、选择“高级”选卡;
3、点击“启动和故障恢复”那一栏的“设置”按钮;
4、在弹出的窗口中点击“编辑”按钮,会打开“boot.ini”文件;
5、把里面的“multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect”删除,然后保存就可以了。
PS:Boot.ini是系统启动时调用的文件,受系统保护,在C根目录下,嫌麻烦的话可以直接进C盘根目录修改。
方法二:
点击“开始” -> “所有程序” -> “附件”,右击“命令提示符” -> “以管理员身份运行”,
打开“命令提示符”窗口,输入:bcdedit /delete {ntldr} /f,关掉窗口重启
本人使用方法二解决的,方法一没有使用。
如果二不适合你,你可以试一试一。
如果两者都不行,那就百度一把找着其他方法。
win7引导修复

(三)Bootsect应用示例
bootsect /nt52 E: 给E盘写入兼容WindowsXP的PBR。
bootsect /nt60 sys /mbr 给硬盘写入兼容Windows7和Vista的MBR,给活动分区写入兼容Windows7和Vista的PBR。
bootsect /nt52 sys /mbr 给硬盘写入兼容WindowsXP的MBR,给活动分区写入兼容WindowsXP的PBR。
1、完全备份法:就是将引导文件复制一份保存起来,有需要时再复制回去。
2、Bcdedit编辑法:只能用于维护BCD,由于BCD不能像XP的boot.ini那样直接用记事本打开编辑启动选项,而且目前尚没有简单易行的第三方编辑工具,所以在BCD中自定义启动选项只能使用Bcdedit。Bcdedit是一个编辑BCD(启动配置数据)的命令行工具。它有多种功能,包括创建新的BCD、修改现有BCD以及添加启动菜单选项等。该工具与分发一起包含在%WINDIR%\System32文件夹中。你需要有管理员权限才能使用Bcdedit。注意Bcdedit默认操作的是活动分区下的\boot\BCD,即使活动分区没有盘符或者是隐藏分区,操作都仍然有效。要操作其它路径的BCD,请用bcdedit /store参数指定。
Win7启动的完美修复

Win7启动的完美修复今天又弄了一下分区,本来我觉得应该不会有事的,结果还是不能启动了,开机就黑屏,提示BOOTMGR is compressedPress Ctrl+Alt+Del to restart虽然是备份了分区表,不过直接恢复我觉得应该不好,修改分区的时候是移动了文件的。
我拿Win7安装盘看了一下,根本没有修复功能,xp的倒是有,我在盘里搜了一下boot,找到一个叫bootsect.exe的程序,运行了一下:bootsect /nt60 c: 然后重启就成功了!先简要说一下windows的启动原理:开机进入bios,完成自检等步骤后进入MBR,这里一般不会有什么问题。
MBR是个小程序,主要是在活动分区查找引导文件,并从用它来引导,Win7下是BOOTMGR等一系列程序,xp下是NTLDR,如果没有找到活动分区会提示operation system not found,还有常见的BOOTMGR is missing、NTLDR is missing。
我去打开bootsect看里面有个BOOTMGR is compressed,按字面理解是那个文件被压缩了。
下面再简要归纳一下修复步骤,适用于各种情况,只要Win7系统本身没坏,引导文件损坏或者根本不存在都可以修复,比如用ghost 安装多系统的,或者引导被其它系统破坏的。
参考了网上的一些内容,网上倒是有的文章写得挺好的,但是你如果去搜win7启动修复,搜到的文章都是没用的,好的文章都很靠后不好找的。
都是用cmd命令,pe下没有设置环境变量,因此要进相应的目录运行程序。
cmd命令运行有一个优先级,就是先在当前目录查找程序,然后去环境变量path的目录找,只运行第一个。
1.从pe启动,进入bcdboot的目录,我是C:\Windows\System32,执行bcdboot C:\Windows /l zh-cn /s c: 意思是把所需的BOOTMGR等引导文件放到c盘,如果本来就这些文件有的话可以跳过这一步。
Windows7的启动项详细介绍

Windows7的启动项详细介绍Windows7的启动项详细介绍细数Windows 7的启动项我们知道,Windows中有自带的启动文件夹,它是最常见的启动项目,但很多人却很少注意仔细检查它。
如果把程序装入到这个文件夹中,系统启动就会自动地加载相应程序,而且因为它是暴露在外的,所以非常容易被外在的因素更改。
一、具体的位置是“开始”菜单中的“启动”选项在硬盘上的位置是:C:Documents andSettingsAdministrator“开始”菜单程序启动;在注册表中的位置是:HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVe rsionRun二、MsconfigMsconfig是Windows系统中的“系统配置实用程序”,它管的方面可够宽,包括:system.ini、win.ini、启动项目等。
同样,里面也是自启动程序非常喜欢呆的地方!1.System.ini首先,在“运行”对话框中输入“msconfig”启动系统配置实用程序(下同),找到system.ini标签,里面的“shell=……” 就可以用来加载特殊的程序。
如果你的shell=后面不是默认的explorer.exe,或者说后面还有一个程序的名字,那你可要小心了,请仔细检查相应的程序是否安全!2.Win.ini如果我们想加载一个程序:hack.exe,那么可以在win。
ini中用下面的语句来实现:[windows]load=hack.exerun=hacke.exe该怎么做,你应该知道了吧!这一点上,使用魔方(点此下载)中的系统设置- 启动项设置,一目了然,而且可以轻松去除和添加启动项。
3.“启动”项目系统配置实用程序中的启动标签和我们上面讲的“启动”文件夹并不是同一个东西,在系统配置实用程序中的这个启动项目,是Windows系统启动项目的集合地。
几乎所有的启动项目都能在这里找到——当然,经过特殊编程处理的程序可以通过另外的方法不在这里显示。
win7启动项修复问题

win7系统启动项破坏解决方案之一
下面是处理win7装完系统后,无法进入系统,启动项有问题处理方法。
可以用doc中bcd命令处理:
首先:有个一作为启动的U盘
其次:进入系统后,运行里输入cmd打开命令窗口
最后:在其中输入bcdboot c:\windows /s c:修复系统启动项。
重启后电脑就好了。
用U盘启动界面,进入系统,在运行cmd后输入:bcdboot c:\windows /s c:
win7系统启动项破坏解决方案之一
下面是处理win7装完系统后,无法进入系统,启动项有问题处理方法。
可以用doc中bcd命令处理:
首先:有个一作为启动的U盘
其次:进入系统后,运行里输入cmd打开命令窗口
最后:在其中输入bcdboot c:\windows /s c:修复系统启动项。
重启后电脑就好了。
用U盘启动界面,进入系统,在运行cmd后输入:bcdboot c:\windows /s c:
win7系统启动项破坏解决方案之一
下面是处理win7装完系统后,无法进入系统,启动项有问题处理方法。
可以用doc中bcd命令处理:
首先:有个一作为启动的U盘
其次:进入系统后,运行里输入cmd打开命令窗口
最后:在其中输入bcdboot c:\windows /s c:修复系统启动项。
重启后电脑就好了。
用U盘启动界面,进入系统,在运行cmd后输入:bcdboot c:\windows /s c:
最后:在其中输入bcdboot c:\windows /s c:修复系统启动项。
重启后电脑就好了。
用U盘启动界面,进入系统,在运行cmd后输入:bcdboot c:\windows /s c:
详解Win7启动过程 BCD启动设置数据介绍

详解Win7启动过程 BCD启动设置数据介绍详解Win7启动过程 BCD启动设置数据介绍Windows7操作系统启动过程详解,一般顺序为:BIOS→MBR→Bootmgr→BCD→Winload.exe→内核加载1)开机后,BIOS进行开机自检(POST),然后选择从硬盘进行启动,加载硬盘的MBR并把控制权交给MBR(MBR是硬盘的第一个扇区,它不在任何一个分区内);2)MBR会搜索64B大小的分区表,找到4个主分区(可能没有4个)的活动分区并确认其他主分区都不是活动的,然后加载活动分区的第一个扇区(Bootmgr)到内存;3)Bootmgr寻找并读取BCD,如果有多个启动选项,会将这些启动选项反映在屏幕上,由用户选择从哪个启动项启动。
4)选择从Windows7启动后,会加载C:\windows\system32\winload.exe,并开始内核的加载过程,内核加载过程比较长,比较复杂,这里就不一一讲了。
在这个过程中,bootmgr和BCD存放在Windows7的保留分区里,而从Winload.exe开始,就开始进入到C盘执行内核的加载过程了。
MBR(Master Boot Record),中文意为主引导记录。
硬盘的0磁道的第一个扇区称为MBR,它的大小是512字节,而这个区域可以分为两个部分。
第一部分为pre-boot区(预启动区),占446字节;第二部分是Partition table区(分区表),占66个字节,该区相当于一个小程序,作用是判断哪个分区被标记为活动分区,然后去读取那个分区的启动区,并运行该区中的代码。
他是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它。
但我们可以用ROM-BIOS中提供的INT13H的2号功能来读出该扇区的内容,也可用软件工具Norton8.0中的DISKEDIT.EXE来读取BCD=Boot Configuration Data (启动设置数据) ,BCD是操作系统中的启动设置数据,在有vista或windows7的多重操作系统中,系统通bootmgr程序导入BCD文件完成启动菜单的引导。
【免费下载】Win7启动过程及启动项修复详解

2.分区表存在问题
系统盘不是活动的主分区,这种情形只要用分区工具(比如 diskgenius)把系 统盘设为活动的主分区即可。 pbr 出现问题,主要是 pbr 代码被改写,因为被 改写的代码不同,所以出错信息也不相同。比如 Win7 系统的活动分区,却被 写入了适合于 XP 的 pbr,这样开机的时候就会出现如图的提示: NTLDR is missing Press Ctrl+Alt+Del to restart 简单的解决办法就是用
XP,Windows 7双系统启动项恢复之新编(图解)

XP,WINDOWS 7双系统启动项恢复之新编(图解)对于大部分XP与windows7双系统的用户,在其对XP系统进行还原与重装时都会遇到一个相同且非常头疼的问题,这个问题就是:如何恢复XP与windows7双系统启动项。
对于这一问题,爱于电脑的我也是花了比较多的时间去研究过。
我结合网上的一些资料以及自己的一些分析在我心爱的笔记本上上测试了无数次,终于整理和测试出一套比较好的恢复方法。
下面我就结合我的亲身实战经验与大家一同分享,有不当之处;还望高手们指出,本人虚心接受并继续学习。
双系统启动项丢失原因:对于大部分双系统用户其安装方法都是:硬盘分区由一个主分区和若干个逻辑分区组成,XP系统是之前早已安装好的,在活动分区C盘;然后在逻辑分区D盘上安装windows7系统。
但是,大部分用户都不知道,在安装windows7时,windows7系统的引导文件(开机启动文件)都会默认写入活动盘,也就是XP安装盘C盘,包括主要文件:boot目录,bootmgr 文件。
(Boot.BAK和BOOTSECT.BAK文件是备份文件)如图所示:这样一来就导致你还原和重装XP系统后就把你的windows7系统启动文件也给破坏了,从而电脑开机时就无法读取windows7开机启动项文件,使你只能进入XP系统。
双系统启动项修复方法:方法一:非装机光盘修复法。
需要用到的程序:Microsoft .NET Framework2.0 EasyBCD需要提取的文件:bcd bootmgr memtest.exe步骤:1准备工作进入XP后,在我的电脑中进行如下操作(工具——文件夹选项——查看——选择“显示所有文件和文件夹”,去掉“隐藏受保护的操作系统文件”的钩)以便显示所有系统文件.(注释1:显示windows系统文件的方法。
)从windows7安装盘或者windows7镜像文件根目录下提取bootmgr文件,boot目录下提取bcd和memtest.exe(memtest.exe是开机时用来内存诊断的,没有它该项功能将会丢失);将bootmgr复制至XP系统盘根目录下,其属性设置为只读和隐藏;在XP系统盘根目录下新建boot目录,将其属性设置为隐藏,然后将bcd和memtest.exe复制到该目录下。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Win7启动过程及启动项修复先让我们看一下win7的启动过程的常识:电脑加电后,首先是启动BIOS程序,BIOS自检完毕后,找到硬盘上的主引导记录MBR,MBR读取DPT(分区表),从中找出活动的主分区,然后读取活动主分区的PBR(分区引导记录,也叫dbr),PBR再搜寻分区内的启动管理器文件 BOOTMGR,在BOOTMGR 被找到后,控制权就交给了BOOTMGR。
BOOTMGR读取\boot\bcd文件(BCD=Boot Configuration Data),也就是“启动配置数据”,简单地说,win7下的bcd文件就相当于xp下的boot.ini文件),如果存在着多个操作系统并且选择操作系统的等待时间不为0的话,这时就会在显示器上显示操作系统的选择界面。
在我们选择启动WINDOWS7后,BOOTMGR就会去启动盘寻找WINDOWS\system32\winload.exe,然后通过winload.exe加载win7内核,从而启动整个win7系统。
可以把这个过程简单地概括为:BIOS-->MBR-->DPT-->pbr-->Bootmgr-->bcd-->Winload.exe-->内核加载 -->整个win7系统本文就来说一说MBR-->DPT-->pbr--> Bootmgr-->bcd这一段可能出现的故障的解决。
1.MBR出现问题主要是mbr代码被改写,因为被改写的代码不同,所以出错信息也各不相同。
比如我们装了win7与ubuntu双系统,ubuntu改写了mbr,在我们把ubuntu 所在的分区格式化后,既进不了win7,也进不了ubuntu,开机的时候会出现如图的错误提示:GRUB Loading stage1.5. GRUB loading, please wait... Error 22解决的办法就是重写mbr。
对于重写mbr,我们所熟知的是在dos下用fdisk /mbr命令进行重写。
fdisk /mbr所重写的mbr与xp是兼容的,但是,与win7已经不那么兼容了。
实践表明:用fdisk /mbr命令重写win7的mbr后,需要重建bcd,否则不能正常启动win7。
有网友指出,这里面的原因是fdisk /mbr命令改写了mbr中的硬盘签名。
一般的分区工具都是可以重写mbr的,比如diskgenius,它所重写的mbr与win7是兼容的。
也可以用bootrec /fixmbr 命令重写。
要运行 Bootrec.exe 工具,必须启动 Windows RE。
为此,请按照下列步骤操作:插入windows 7安装光盘,从光盘启动电脑,在光盘启动完成后,按下shift+f10键,调出cmd命令提示符。
在cmd命令提示符中输入:bootrec /fixmbr回车。
这样也就重写了mbr。
2.分区表存在问题系统盘不是活动的主分区,这种情形只要用分区工具(比如diskgenius)把系统盘设为活动的主分区即可。
pbr出现问题,主要是pbr代码被改写,因为被改写的代码不同,所以出错信息也不相同。
比如Win7系统的活动分区,却被写入了适合于XP的 pbr,这样开机的时候就会出现如图的提示:NTLDR is missing Press Ctrl+Alt+Del to restart简单的解决办法就是用bootrec /fixboot命令重写pbr:插入win7安装光盘,从光盘启动,在光盘启动完成后,按下shift+f10键,调出cmd命令提示符。
在命令提示符中输入:bootrec /fixboot回车。
这样也就重建了活动分区的pbr。
这里面还有一个常用的命令也要提一下,这就是bootsect:插入win7安装光盘,从光盘启动,在光盘启动完成后,按下shift+f10键,调出cmd命令提示符。
在cmd命令提示符中输入:bootsect /nt60 sys /mbr回车。
这个命令会改写活动分区的pbr,并同时会改写mbr,使得mbr和pbr适合于win7和vista。
bootsect.exe 程序位于win7安装光盘的boot目录下,可以把这个文件提取出来,在xp下的命令行可以运行这个程序,也可以在 winpe下的命令行运行这个程序,因而这个程序在使用时很方便。
而bootrec.exe命令的使用就没这么方便了。
所以BOOTSECT命令被应用得更为广泛一些。
另外有一个要点需要指出,vista的安装光盘里面的boot文件夹也存在着这个小工具,但vista的bootsect命令没有/mbr参数,因而它只能改写pbr,而不能改写mbr,这是必须要注意的。
实践表明:把一个硬盘的mbr清零,然后运行win7的bootsect命令,确实可以发现mbr被恢复正常。
这也就表明了win7的bootsect命令的确能够重写mbr。
另外,bootsect命令也可以重写xp的mbr和pbr,而这也是bootrec 命令所做不到的。
xp的恢复控制台用fixmbr命令改写mbr,用 fixboot命令改写pbr。
3.引导文件的问题一般可以用bcdboot命令重新写入引导文件:插入win7安装光盘,从光盘启动,在光盘启动完成后,按下shift+f10键,调出cmd命令提示符。
在命令提示符中输入: bcdboot x:\windows /s x:注意,这前一个x:是win7的windows文件夹所在的盘,一般是c:,如果你的不是c盘,请改为对应的盘符。
这后一个x:是活动主分区的盘符所在,一般也是c盘。
所以这个命令一般的写法是:bcdboot c:\windows /s c: 但需要注意,在windows re环境下所看到的盘符与你在win7下所看到的盘符未必一样。
所以需要首先用dir /a命令确认各盘是否正确。
比如:cd /d c: dir /a这两个命令的作用是,首先进入c:盘的根目录,然后显示c盘根目录下的所有文件和文件夹,根据所显示的文件或者文件夹,可以判断这个盘具体是你在 win7下所看到的哪一个盘。
win7的引导文件主要是bootmgr和boot文件夹里面的文件,而boot文件夹里面的文件主要是bcd文件。
bcdboot命令会在指定的分区内重新写入全部win7的引导文件。
如果只是bcd文件有问题,则可以用bootrec 命令重建bcd:插入win7安装光盘,从光盘启动,在光盘启动完成后,按下shift+f10键,调出cmd命令提示符。
在命令提示符中输入: bootrec /RebuildBcd这个命令如果搜到没有写入bcd的win7或者vista 的操作系统,会提示你是否写入,按提示输入Y也就会写入了的。
或者用bcdedit 命令手动改写bcd,但操作要复杂得多。
具体案例分析案例一:开机的时候出现:BOOTMGR is missing press ctrl+alt+del to restart.翻译成汉语就是:bootmgr缺失,按Ctrl + Alt + Del重新启动这是很常见的故障。
既然是bootmgr缺失,我们一般只要用bcdboot命令重建引导文件即可。
这种情形产生的原因,一般可能有:bootmgr文件确实没有了,这是最为常见的。
一种则是由磁盘错误导致的,这种情形下,在winpe下运行一下 chkdsk /f命令也可能解决。
有朋友使用 Diskeeper 对MFT碎片进行整理,开机的时候也出现了这个提示。
估计可能是用DISKEEPER进行的MFT磁盘整理后,这或者是diskeeper的一个bug,因而不建议用diskeeper进行mft碎片整理。
一位网友因为好奇。
把C盘设成了活动的(active partition )。
是这样设置活动的:对计算机点右键-管理-硬盘管理。
右键点C盘,设置为活动的。
靠。
怎么回事啊。
重启后居然无法启动!显示bootmgr is missing,Ctrl+Alt+Delete to restart。
然后还是如此。
这是从网上找到的一个案例,分析可以得出结论。
他所装的windows7应该存在着一个隐藏的“系统保留”分区,这个隐藏的系统保留分区才是真正的活动主分区,而他的c盘则应该不是活动的。
他把c盘设为活动,这也就意味着取消了“系统保留”分区的活动状态。
但引导文件是在“系统保留”分区,而不是在c 盘,c盘变成了活动的主分区,mbr就会启动c盘的pbr,而c盘的pbr又会去c盘找bootmgr,但c盘没有bootmgr,所以出错也就是必然的了。
解决的办法其实只要简单地再把系统保留分区设为活动即可。
这位朋友制造了问题,但好象并没能最后解决问题。
真所谓会者不难,难者不会。
案例二:开机的时候出现:BOOTMGR is compressed Press Ctrl+Alt+Del to restart翻译成汉语就是: bootmgr被压缩,按Ctrl + Alt + Del重新启动这种情形产生的原因是因为对系统盘进行了压缩。
奇怪的是,对于这种情形,我们用bcdboot命令重建引导文件却并不能解决。
但是,我们可以运行命令:compact /u /a /f /i /s c:\* 这样可以使得问题得到解决。
compact程序位于windows\system32文件夹下,所以我们要先用CD命令进入windows\system32目录。
这里是假设c:盘是bootmgr所在的盘,如果不是,要改为对应的盘符。
网上有朋友用这个命令的时候并没有解决问题,原因则在于,这位朋友所运行的命令是:compact /u /a /f /i /s c:\ 没有后面这个*,所以命令并没有实现运行者的目的。
从命令本身所提供的帮助说明来看,这个*似乎是没有必要的,但实际操作表明,这个*是必须的。
这个命令会把已经压缩的C盘文件完全解压,真所谓解铃还須系铃人。
注意,只运行命令:compact /u /a /f /i c:\bootmgr 并不能解决问题。
有网友发现,运行“Bootrec.exe /fixmbr、Bootrec /fixboot"然后重启,这样可以解决问题。
测试表明,其实只需要运行Bootrec /fixboot这一个命令即可。
这是另类的解决的办法。
猜想可能是,对驱动压缩后,PBR中的BPB表并没有随之修改,所以BPB表中所记录的分区信息与实际的分区信息不一致。
运行Bootrec /fixboot 命令后重写了bpb,这样就使得二者变为了一致。
实践表明:用bootsect命令也能实现对这个问题的解决。
有网友发贴,说是装了xp与vista双系统,启动vista系统出现了BOOTMGR is compressed ,于是他在xp下取消了系统盘的压缩状态。