无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 9367|回复: 29
打印 上一主题 下一主题

[求助] 求一个增加Wim文件到BCD的批处理

[复制链接]
跳转到指定楼层
#
发表于 2020-5-16 23:22:21 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
500无忧币
本帖最后由 smellsun 于 2020-5-16 23:27 编辑

传统模式和uefi  都要   不需要自动复制Wim和SDI , 这个我们手动复制,固定文件名  boot.wim  boot.sdi  固定位置 引导分区 boot目录 注意不是系统所在分区

这个说一下本人的具体使用环境, 电脑公司装机需求。  
分区特殊    MBR    2个主分区    boot.wim 在首分区 通常这个分区是隐藏的
UEFI  boot.wim 在首分区 通常这个分区是隐藏的
26#
 楼主| 发表于 2020-5-22 18:54:01 | 只看该作者
2010sya 发表于 2020-5-21 23:49
装机的话,还是找个一键GHOST或类似的东东吧

不是装机,相当于PE版的一键还原精灵,
回复

使用道具 举报

25#
发表于 2020-5-22 15:26:41 | 只看该作者
谢谢
回复

使用道具 举报

24#
发表于 2020-5-22 09:26:52 | 只看该作者
如果你出点RMB的话,直接写成EXE不就更香吗?
回复

使用道具 举报

23#
发表于 2020-5-22 08:51:30 | 只看该作者
不用复制到ESP分区,还是放在C盘下比较好,然后批处理就可以通用MBR和UEFI
回复

使用道具 举报

22#
发表于 2020-5-22 00:57:28 | 只看该作者
hilsonma 发表于 2020-5-21 05:23
批处理放到boot.sdi所在文件夹
如果wim文件是同文件夹里的boot.wim,直接点击批处理
如果wim文件不是同 ...

高手在这个,我个人测试成功!
回复

使用道具 举报

21#
发表于 2020-5-22 00:51:10 | 只看该作者
smellsun 发表于 2020-5-21 23:28
Win7 传统模式下 不成功

用17楼的。我也去试试。
回复

使用道具 举报

20#
发表于 2020-5-21 23:49:08 | 只看该作者
装机的话,还是找个一键GHOST或类似的东东吧


不知道能否满足楼主需求?

点评

不是装机,相当于PE版的一键还原精灵,  详情 回复 发表于 2020-5-22 18:54
回复

使用道具 举报

19#
 楼主| 发表于 2020-5-21 23:28:58 | 只看该作者

Win7 传统模式下 不成功








点评

用17楼的。我也去试试。  详情 回复 发表于 2020-5-22 00:51
回复

使用道具 举报

18#
 楼主| 发表于 2020-5-21 19:19:30 | 只看该作者
liuzhaoyzz 发表于 2020-5-19 18:50
如果一个批处理写出来,只能用于这一台或者同类型的电脑,写了干啥呢?不如直接用bootice搞下算了 ...

批处理效率高。。。1秒
回复

使用道具 举报

17#
 楼主| 发表于 2020-5-21 19:18:49 | 只看该作者
liuzhaoyzz 发表于 2020-5-18 06:33
楼主的思路就不对,不能惯着他!

  我是电脑店 ,装机需求 装机需求, 批处理主要给小白用,傻瓜无脑。
同时考虑客户的易用性。
回复

使用道具 举报

16#
发表于 2020-5-21 05:23:00 | 只看该作者
本帖最后由 hilsonma 于 2020-5-21 05:44 编辑
  1. @echo off
  2. set sdi=%~p0boot.sdi
  3. set sdi_drv=%~d0
  4. set wim=%~p0boot.wim
  5. set des=boot.wim
  6. set wim_drv=%sdi_drv%
  7. if not %1a==a set wim=%~pnx1&&set des=%~nx1&&set wim_drv=%~d1
  8. for /f "tokens=2 delims={}" %%a in ('bcdedit /create /application osloader') do set Guid={%%a}
  9. bcdedit /set %Guid% description %des%
  10. bcdedit /set %Guid% device ramdisk=[%wim_drv%]%wim%,{ramdiskoptions}
  11. bcdedit /set %Guid% osdevice ramdisk=[%wim_drv%]%wim%,{ramdiskoptions}
  12. bcdedit /set %Guid% systemroot \Windows
  13. bcdedit /set %Guid% detecthal 1
  14. bcdedit /set %Guid% winpe 1
  15. bcdedit /displayorder %Guid% /addlast
  16. bcdedit /timeout 5
  17. bcdedit /set {bootmgr} nointegritychecks 1
  18. bcdedit /create {ramdiskoptions}
  19. bcdedit /set {ramdiskoptions} ramdisksdidevice [%sdi_drv%]
  20. bcdedit /set {ramdiskoptions} ramdisksdipath %sdi%
复制代码

批处理放到boot.sdi所在文件夹
如果wim文件是同文件夹里的boot.wim,直接点击批处理
如果wim文件不是同文件夹里的boot.wim,将wim文件拖放到批处理上

UEFI平台下修改的是UEFI启动的BCD
BIOS平台下修改的是BIOS启动的BCD
批处理是通用的。

点评

高手在这个,我个人测试成功!  详情 回复 发表于 2020-5-22 00:57
回复

使用道具 举报

15#
发表于 2020-5-19 18:50:48 来自手机 | 只看该作者
        如果一个批处理写出来,只能用于这一台或者同类型的电脑,写了干啥呢?不如直接用bootice搞下算了,还是GUI的。

点评

批处理效率高。。。1秒  详情 回复 发表于 2020-5-21 19:19
回复

使用道具 举报

14#
发表于 2020-5-19 15:01:00 | 只看该作者
本帖最后由 qingyi78 于 2020-5-22 00:59 编辑

修改了一下LIU_ZHENFENG大神的批处理,固定了路径。可能有错。但对于丹ESP分区做这个批处理应该不难

已删除自己的批处理,请关注17楼的大神!
回复

使用道具 举报

13#
发表于 2020-5-19 14:51:38 | 只看该作者
传统模式和uefi  都要   不需要自动复制Wim和SDI , 这个我们手动复制,固定文件名  boot.wim  boot.sdi  固定位置 引导分区 boot目录 注意不是系统所在分区

这个说一下本人的具体使用环境, 电脑公司装机需求。  
分区特殊    MBR    2个主分区    boot.wim 在首分区 通常这个分区是隐藏的
UEFI  boot.wim 在首分区 通常这个分区是隐藏的

突然发现楼主的分区其实没那么复杂,也就是说是单一ESP分区引导UEFI兼负责LEGACY引导也就是说所有的启动文件都在这个分区,甚至连BOOT.WIM和BOOT.SDI也是固定的。只需要mountvol把ESP分区固定盘符为Z即可写出相当简单不用变量的批处理。我不会写,但相信很多批处理高手可以写出特别完美的带判断的批处理。
回复

使用道具 举报

12#
发表于 2020-5-19 14:45:25 | 只看该作者
liu_zhenfeng 发表于 2020-5-17 22:42
实际来源于http://bbs.wuyou.net/forum.php?mod=viewthread&tid=408477&page=2#pid3752228这个贴里的大神 ...

其实主要是研究的精神和发现问题解决问题的能力,,从07年开始和不点一起探讨G4D的兼容问题开始,就慢慢学习无忧老大们的探索精神以及自我纠错能力。
回复

使用道具 举报

11#
发表于 2020-5-18 06:33:22 来自手机 | 只看该作者
liu_zhenfeng 发表于 2020-5-17 22:33
因为题主说了是“ 固定文件名  boot.wim  boot.sdi  固定位置 ”了

楼主的思路就不对,不能惯着他!

点评

我是电脑店 ,装机需求 装机需求, 批处理主要给小白用,傻瓜无脑。 同时考虑客户的易用性。  详情 回复 发表于 2020-5-21 19:18
回复

使用道具 举报

10#
发表于 2020-5-17 22:42:57 | 只看该作者
qingyi78 发表于 2020-5-17 19:22
http://wuyou.net/forum.php?mod=viewthread&tid=416395
现在再用的就是大神的这个帖子的批处理。看了你 ...

实际来源于http://bbs.wuyou.net/forum.php?m ... p;page=2#pid3752228这个贴里的大神们的代码。我只是发现套成压缩包更能通用,我还差的远着呢....

点评

其实主要是研究的精神和发现问题解决问题的能力,,从07年开始和不点一起探讨G4D的兼容问题开始,就慢慢学习无忧老大们的探索精神以及自我纠错能力。  详情 回复 发表于 2020-5-19 14:45
回复

使用道具 举报

9#
发表于 2020-5-17 22:33:10 | 只看该作者
liuzhaoyzz 发表于 2020-5-17 19:05
批处理可以做到遍历指定目录的任意一个wim文件并加入启动项,为什么要固定死名字呢?换个PE怎么 ...

因为题主说了是“ 固定文件名  boot.wim  boot.sdi  固定位置 ”了

点评

楼主的思路就不对,不能惯着他!  详情 回复 发表于 2020-5-18 06:33
回复

使用道具 举报

8#
发表于 2020-5-17 19:22:15 | 只看该作者

http://wuyou.net/forum.php?mod=viewthread&tid=416395
现在再用的就是大神的这个帖子的批处理。看了你新的批处理感觉好像更好,不过仍有可以完善的地方。

点评

实际来源于http://bbs.wuyou.net/forum.php?mod=viewthread&tid=408477&page=2#pid3752228这个贴里的大神们的代码。我只是发现套成压缩包更能通用,我还差的远着呢....  详情 回复 发表于 2020-5-17 22:42
回复

使用道具 举报

7#
发表于 2020-5-17 19:05:40 来自手机 | 只看该作者
liu_zhenfeng 发表于 2020-5-17 15:35
set wim=testpe         wim文件名
set sdi=boot             boot文件名
set title=WindowsPE  启动项名 ...

        批处理可以做到遍历指定目录的任意一个wim文件并加入启动项,为什么要固定死名字呢?换个PE怎么办?

点评

因为题主说了是“ 固定文件名 boot.wim boot.sdi 固定位置 ”了  详情 回复 发表于 2020-5-17 22:33
回复

使用道具 举报

6#
发表于 2020-5-17 15:35:04 | 只看该作者
set wim=testpe         wim文件名
set sdi=boot             boot文件名
set title=WindowsPE  启动项名称
set partition=z:         挂载到哪个盘

点评

批处理可以做到遍历指定目录的任意一个wim文件并加入启动项,为什么要固定死名字呢?换个PE怎么办?  详情 回复 发表于 2020-5-17 19:05
回复

使用道具 举报

5#
发表于 2020-5-17 11:17:49 | 只看该作者
liuzhaoyzz 发表于 2020-5-17 09:45
1、mountvol.exe %partition% /s只适用于单硬盘有一个EFI分区的情况,对于多硬盘不能胜任,比如一个SSD硬 ...

自适应不仅仅是winload.exe/winload.efi的不同,隐藏分区挂载也大不一样,先来个单纯EFI的题主试试看。
回复

使用道具 举报

4#
发表于 2020-5-17 09:45:33 | 只看该作者

1、mountvol.exe %partition% /s只适用于单硬盘有一个EFI分区的情况,对于多硬盘不能胜任,比如一个SSD硬盘+若干个大容量的GPT机械硬盘就难以胜任。
2、另外对于楼主图1的场景,有个1.25GB的活动MBR分区,是隐藏的,mountvol.exe %partition% /s也是不能自动挂载这个隐藏分区的。
3、楼主要求的适用于BIOS/UEFI启动的场景,上面的代码对于winload.exe/winload.efi不能自适应。

楼主可用过我写的PE安装器?

点评

自适应不仅仅是winload.exe/winload.efi的不同,隐藏分区挂载也大不一样,先来个单纯EFI的题主试试看。  详情 回复 发表于 2020-5-17 11:17
回复

使用道具 举报

3#
 楼主| 发表于 2020-5-16 23:27:21 | 只看该作者
坐等大佬出现
回复

使用道具 举报

2#
 楼主| 发表于 2020-5-16 23:25:49 | 只看该作者


回复

使用道具 举报

1#
发表于 2020-5-16 23:22:22 | 只看该作者
  1. @echo off
  2. ::
  3. set wim=testpe
  4. set sdi=boot
  5. set title=%wim%
  6. set partition=z:
  7. ::
  8. mountvol.exe %partition% /s
  9. ::
  10. if exist "%partition%\boot\%wim%\id_1" (set/p id_1=<"%partition%\boot\%wim%\id_1" )
  11. if exist "%partition%\boot\%wim%\id_2" (set/p id_2=<"%partition%\boot\%wim%\id_2" )
  12. bcdedit /delete %id_1% /f >nul 2>nul
  13. bcdedit /delete %id_2% /f >nul 2>nul
  14. ::
  15. set id1={%time:~6,2%%time:~9,2%ffff-8d96-11de-8e71-fffffffffffa}
  16. set id2={%time:~6,2%%time:~9,2%ffff-8d96-11de-8e71-fffffffffffb}
  17. bcdedit /create %id2% /d "%title%" /device
  18. bcdedit /set %id2% ramdisksdidevice partition=%partition%
  19. bcdedit /set %id2% ramdisksdipath "\boot\%wim%\%sdi%.sdi"
  20. ::
  21. bcdedit /create %id1% /d "%title%" /application osloader
  22. bcdedit /set %id1% device ramdisk="[%partition%]\boot\%wim%\%wim%.wim",%id2%
  23. bcdedit /set %id1% osdevice ramdisk="[%partition%]\boot\%wim%\%wim%.wim",%id2%
  24. bcdedit /set %id1% path \windows\system32\boot\winload.efi
  25. bcdedit /set %id1% description "%title%"
  26. bcdedit /set %id1% locale zh-CN
  27. bcdedit /set %id1% inherit {bootloadersettings}
  28. bcdedit /set %id1% systemroot \windows
  29. bcdedit /set %id1% detecthal Yes
  30. bcdedit /set %id1% winpe Yes
  31. bcdedit /set %id1% ems no
  32. bcdedit /displayorder %id1% /addlast
  33. ::
  34. mountvol.exe %partition% /d
  35. ::
  36. timeout /t 5
复制代码
EFI_addwim_tmp2020517.txt (1.25 KB, 下载次数: 16)


点评

Win7 传统模式下 不成功[attachimg]457520[/attachimg] [attachimg]457519[/attachimg] [attachimg]457521[/attachimg] [attachimg]457522[/attachimg]  详情 回复 发表于 2020-5-21 23:28
http://wuyou.net/forum.php?mod=viewthread&tid=416395 现在再用的就是大神的这个帖子的批处理。看了你新的批处理感觉好像更好,不过仍有可以完善的地方。  详情 回复 发表于 2020-5-17 19:22
UEFI 下可用 但是 启动项名称哪里添加?  发表于 2020-5-17 14:18
1、mountvol.exe %partition% /s只适用于单硬盘有一个EFI分区的情况,对于多硬盘不能胜任,比如一个SSD硬盘+若干个大容量的GPT机械硬盘就难以胜任。 2、另外对于楼主图1的场景,有个1.25GB的活动MBR分区,是隐藏的  详情 回复 发表于 2020-5-17 09:45
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-7-18 14:27

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表