无忧启动论坛

标题: 向 2011hiboy 大侠致敬!BCDEDIT 实用命令行详解 [打印本页]

作者: 2013kyj    时间: 2014-10-7 10:14
标题: 向 2011hiboy 大侠致敬!BCDEDIT 实用命令行详解
首先,向热心、无私的大侠 2011hiboy 致敬!
本人在编辑BCD的一些问题上,一直是菜鸟,遇到了很多问题,有幸得到了大侠的帮扶,现在将大侠制作的《BCDEDIT实用命令行详解》贴出来,(大侠已经制作成PDF电子书)有需要的人,可以下载看看!
本人感觉如果对BCDedit命令行熟悉后,完全可以无视第三方、傻瓜式的BCD编辑工具,并且成功率100%

bcdedit实用命令详解.pdf (320.89 KB, 下载次数: 688)


作者: 2013kyj    时间: 2014-10-7 11:37
再追加一下大侠提供的案例:

案例

1、        使用说明
将脚本内容复制到文本,修改后缀名为bat即可使用。

2、        新建一个WIM启动项 [已验证]

============================脚本开始============================
@echo off
color 1f
bcdedit.exe /timeout 7
for /f "delims={,} tokens=2" %%a in ('bcdedit /create /d "WIM" -application osloader  ') do set Guid={%%a}
bcdedit /set %Guid% device ramdisk="[%systemdrive%]\Aero7PE\WIN7PE.wim,{ramdiskoptions}"
bcdedit /set %Guid% osdevice ramdisk="[%systemdrive%]\Aero7PE\WIN7PE.1wim,{ramdiskoptions}"
bcdedit /set %Guid% path \windows\system32\boot\winload.exe
bcdedit /set %Guid% locale zh-CN
bcdedit /set %Guid% systemroot \windows
bcdedit /displayorder %Guid% -addlast
============================脚本结束============================


3、        新建一个实模式启动项 [已验证]
============================脚本开始============================
@echo off
color 1f
bcdedit.exe /timeout 7
for /f "delims={,} tokens=2" %%a in ('bcdedit /create /d "Grub" /application bootsector') do set Guid={%%a}
bcdedit /set %Guid% device boot
bcdedit /set %Guid% path \grldr.mbr
bcdedit /set %Guid% locale zh-CN
bcdedit /displayorder %Guid% /addlast
============================脚本结束============================


4、        新建一个普通系统启动项 [已验证]
============================脚本开始============================
@echo off
color 1f
bcdedit.exe /timeout 7
for /f "delims={,} tokens=2" %%a in ('bcdedit /create /d "Windows 7" /application osloader ') do set Guid={%%a}
bcdedit /set %Guid% inherit {bootloadersettings}
bcdedit /set %Guid% device partition=C:
bcdedit /set %Guid% osdevice partition=C:
bcdedit /set %Guid% path \Windows\system32\winload.exe
bcdedit /set %Guid% systemroot \Windows
bcdedit /set %Guid% locale zh-CN
bcdedit /displayorder %Guid% /addlast
============================脚本结束============================


5、        新建一个VHD启动项 [已验证]
============================脚本开始============================
@echo off
color 1f
bcdedit.exe /timeout 7
for /f "delims={,} tokens=2" %%a in ('bcdedit /create /d "Boot_VHD" /application osloader ') do set Guid={%%a}
bcdedit /set %Guid% inherit {bootloadersettings}
bcdedit /set %Guid% device vhd=[C:]\BOOT.VHD
bcdedit /set %Guid% osdevice vhd=[C:]\BOOT.VHD
bcdedit /set %Guid% path \Windows\system32\winload.exe
bcdedit /set %Guid% locale zh-CN
bcdedit /set %Guid% systemroot \Windows
bcdedit /displayorder %Guid% /addlast
============================脚本结束============================

作者: Bourne1234    时间: 2014-10-7 13:51
Bootice挺好用的呀,图形化
作者: 2011hiboy    时间: 2014-10-7 16:22
本帖最后由 2011hiboy 于 2014-10-8 00:07 编辑

很高兴你分享给大家参考使用

Bootice是个非常不错的工具,处理磁盘、引导记录很棒,我自己一直使用;

bcdeedit这是微软自带的命令行工具,在nt6平台上都有,通用性较好,对bcd文件处理上功能比较全面,尤其是实现自动化脚本的时候非常方便。


>>>下载的顶下咯,不然不多久就沉啦<<<


2014-10-07 更新了部分内容:

bcdedit.pdf (343.1 KB, 下载次数: 344)


下面是脚本详情:

1、        新建一个WIM启动项 [已验证]
============================脚本开始============================
@echo off
color 1f
bcdedit.exe /timeout 7
for /f "delims={,} tokens=2" %%a in ('bcdedit /create /d "WIM" -application osloader  ') do set Guid={%%a}
bcdedit /set %Guid% device ramdisk="[%systemdrive%]\Aero7PE\WIN7PE.wim,{ramdiskoptions}"
bcdedit /set %Guid% osdevice ramdisk="[%systemdrive%]\Aero7PE\WIN7PE.1wim,{ramdiskoptions}"
bcdedit /set %Guid% path \windows\system32\boot\winload.exe
bcdedit /set %Guid% locale zh-CN
bcdedit /set %Guid% systemroot \windows
bcdedit /displayorder %Guid% -addlast
============================脚本结束============================

2、        新建一个实模式启动项 [已验证]
============================脚本开始============================
@echo off
color 1f
bcdedit.exe /timeout 7
for /f "delims={,} tokens=2" %%a in ('bcdedit /create /d "Grub" /application bootsector') do set Guid={%%a}
bcdedit /set %Guid% device boot
bcdedit /set %Guid% path \grldr.mbr
bcdedit /set %Guid% locale zh-CN
bcdedit /displayorder %Guid% /addlast
============================脚本结束============================

3、        新建一个普通系统启动项 [已验证]
============================脚本开始============================
@echo off
color 1f
bcdedit.exe /timeout 7
for /f "delims={,} tokens=2" %%a in ('bcdedit /create /d "Windows 7" /application osloader ') do set Guid={%%a}
bcdedit /set %Guid% inherit {bootloadersettings}
bcdedit /set %Guid% device partition=C:
bcdedit /set %Guid% osdevice partition=C:
bcdedit /set %Guid% path \Windows\system32\winload.exe
bcdedit /set %Guid% systemroot \Windows
bcdedit /set %Guid% locale zh-CN
bcdedit /displayorder %Guid% /addlast
============================脚本结束============================

4、        新建一个VHD启动项 [已验证]
============================脚本开始============================
@echo off
color 1f
bcdedit.exe /timeout 7
for /f "delims={,} tokens=2" %%a in ('bcdedit /create /d "Boot_VHD" /application osloader ') do set Guid={%%a}
bcdedit /set %Guid% inherit {bootloadersettings}
bcdedit /set %Guid% device vhd=[C:]\BOOT.VHD
bcdedit /set %Guid% osdevice vhd=[C:]\BOOT.VHD
bcdedit /set %Guid% path \Windows\system32\winload.exe
bcdedit /set %Guid% locale zh-CN
bcdedit /set %Guid% systemroot \Windows
bcdedit /displayorder %Guid% /addlast
============================脚本结束============================

5、        新建一个NT5(XP、2003)启动项 [已验证]
============================脚本开始============================
@echo off
color 1f
bcdedit.exe /timeout 7
bcdedit /create {ntldr} /d "XP OS Loader"
bcdedit /set {ntldr} device partition=C:
bcdedit /set {ntldr} path \ntldr
bcdedit /displayorder {ntldr} /addlast
============================脚本结束============================


作者: netants2011    时间: 2014-10-7 16:41
不错,不错,很实用,顶起
作者: lbw2007    时间: 2014-10-7 16:59
很实用的东西,谢谢分享!
作者: sundll    时间: 2014-10-7 18:00
小第求一个  已经制作好的 三合一BCD文件    W8安装 +W7安装+XP安装    都是原版安装   自己改了几天了  也改不好。W7 W8的 有一个文件件重名  这里怎么改  。怎么才能合到一起
作者: mfkwgij    时间: 2014-10-7 18:25
我也来学习一下了
作者: 青青草    时间: 2014-10-7 23:05
sundll 发表于 2014-10-7 18:00
小第求一个  已经制作好的 三合一BCD文件    W8安装 +W7安装+XP安装    都是原版安装   自己改了几天了  也 ...

win8与win7可以合盘。呵呵
作者: sundll    时间: 2014-10-7 23:37
本帖最后由 sundll 于 2014-10-7 23:52 编辑

各位哥哥姐姐     我已经研究几天  眼睛都快花了  也没和出来。  能否指点一二     或者谁有做好的 BCD发给小第一个,   XP WIN7 WIN8.1安装版的

目录.jpg (68.17 KB, 下载次数: 156)

目录.jpg

作者: sundll    时间: 2014-10-7 23:44
再接着发BCD的图  请版主 看看

bcd图片.jpg (127 KB, 下载次数: 136)

bcd图片.jpg

bcd图片2.jpg (134.96 KB, 下载次数: 144)

bcd图片2.jpg

作者: freesoft00    时间: 2014-10-7 23:57
2011hiboy 发表于 2014-10-7 16:22
很高兴你分享给大家参考使用

Bootice是个非常不错的工具,处理磁盘、引导记录很棒,我自己一直 ...

更新的在哪里呀
作者: 2011hiboy    时间: 2014-10-7 23:57
sundll 发表于 2014-10-7 23:44
再接着发BCD的图  请版主 看看


win7、win8安装是启动了一个install.wim的文件,所以新建的win7、win8的安装菜单应该是wim启动项。
你bcd看不出什么问题?,你遇了到什么问题?

有问题可以回复,或者发邮件到我646437520@qq.com 的邮箱(及时看到)。
作者: 2011hiboy    时间: 2014-10-7 23:59
freesoft00 发表于 2014-10-7 23:57
更新的在哪里呀

已上传
作者: rubycon    时间: 2014-10-8 06:41
多谢,学习了。。。。。。。。。
作者: 3ax31a    时间: 2014-10-8 08:26
感谢分享…
作者: 残荷    时间: 2014-10-8 10:44
我用的U 盘启动就是大侠的,这里再次支持一下。
作者: 2012qixitianlon    时间: 2014-10-8 11:36
支持大侠们的不断钻研探索
作者: freesoft00    时间: 2014-10-9 23:09
2011hiboy 发表于 2014-10-7 23:59
已上传


你网盘中的这个位置被360的云检查为有问题,无法下载。
http://acqwvljinh.l6.yunpan.cn/l ... 14085397916128750-0

共享资源 目录无法打开
作者: Voloet    时间: 2014-10-10 19:57
我也来学习一下了
作者: 2013kyj    时间: 2015-11-29 10:14
2011hiboy 发表于 2014-10-7 16:22
很高兴你分享给大家参考使用

Bootice是个非常不错的工具,处理磁盘、引导记录很棒,我自己一直 ...

2011hiboy大神您好,一直有个问题,想请教您,就是上面的BCD参数:

bcdedit /store C:\BOOT\BCD /set %Guid% ramdisksdidevice boot

bcdedit /store C:\BOOT\BCD /set %Guid% ramdisksdipath \BOOT\BOOT.sdi

为什么,我一执行就报错呢,您的教程里面没有sdi的指定哦!希望您能回复一下
作者: papago    时间: 2018-10-16 15:57
向 2011hiboy 大侠致敬!BCDEDIT 实用命令行详解
作者: wyqdlthy    时间: 2018-10-16 17:01
向 2011hiboy 大侠致敬!
作者: 879792799    时间: 2018-10-16 20:17
谢谢分享!!很有价值!!谢谢
作者: 17488    时间: 2020-7-8 22:57
太好了,终于找到
作者: cjy110    时间: 2020-7-9 00:11
谢谢分享!
作者: mooning    时间: 2021-1-27 23:31
谢谢分享。
作者: HFXL    时间: 2021-1-30 22:57
学习一下,很感谢
作者: zoneice    时间: 2021-5-30 16:17
实用教程,感谢!!!
作者: ls68057121    时间: 2021-6-20 15:42
有没有uefi的部分
作者: pcwww    时间: 2021-6-25 16:19
进来学习,感谢分享!!!
作者: wyjhby    时间: 2021-6-25 17:10
这个很有用,下载收藏学习啦
作者: mrzhonghb    时间: 2021-6-25 17:15
ls68057121 发表于 2021-6-20 15:42
有没有uefi的部分

UEFI用bcdboot不香吗
bcdboot D:\windows /s P: /f uefi /l zh-cn
P是ESP分区盘符。D是系统盘符(或者是vhd挂载后的盘符)。
作者: tkidzh    时间: 2023-8-9 10:00
很高兴你分享给大家参考使用
作者: tkidzh    时间: 2023-8-9 10:01
很高兴你分享给大家参考使用
作者: chesson    时间: 2023-8-9 10:12
赞一个!
作者: mr8246    时间: 2024-9-15 22:39
本帖最后由 mr8246 于 2024-9-15 23:39 编辑

新建一个WIM启动项

@echo off
bcdedit /timeout 10
for /f "delims={,} tokens=2" %%a in ('bcdedit /create /d "PE" -application osloader') do set Guid={%%a}
bcdedit /set %Guid% device ramdisk="[d:]\boot\boot.wim,{ramdiskoptions}"
bcdedit /set %Guid% osdevice ramdisk="[d:]\boot\boot.wim,{ramdiskoptions}"
bcdedit /set %Guid% path \Windows\system32\boot\winload.exe
bcdedit /set %Guid% locale zh-CN
bcdedit /set %Guid% systemroot \windows
bcdedit /set %Guid% BootMenuPolicy legacy
bcdedit /set %Guid% DetectHal Yes
bcdedit /set %Guid% WinPE Yes
bcdedit /displayorder %Guid% -addlast
bcdedit /create {ramdiskoptions}
bcdedit /set {ramdiskoptions} ramdisksdidevice partition=D:
bcdedit /set {ramdiskoptions} ramdisksdipath \boot\boot.sdi



根据大侠的脚本,及参考bootice添加项,改了一下,添加
bcdedit /set %Guid% BootMenuPolicy legacy
bcdedit /set %Guid% DetectHal Yes
bcdedit /set %Guid% WinPE Yes

bcdedit /create {ramdiskoptions}
bcdedit /set {ramdiskoptions} ramdisksdidevice partition=D:
bcdedit /set {ramdiskoptions} ramdisksdipath \boot\boot.sdi

但是这个for循环是输出Guid字符串的,没看懂怎么输出的,试了一下把语句for /f "delims={,} tokens=2"里面的逗号去掉也可以









欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3