光盘版和硬盘版的WinPE2.0实现方法已经很多了。U盘版的WinPE1.X也比较多,很多人问我应该怎样弄U盘启动的WinPE2.0,其实很简单,至少有2种方式。

   先说一种RAM方式引导的,这也是我推荐的一种。
   1、找个你认为好用的WinPE2.0光盘镜像。以微软默认的结构为例,主要文件目录结构

│  bootmgr

├─boot
│  │  bcd
│  │  boot.sdi
│  │
│  └─fonts
│          chs_boot.ttf
│          wgl4_boot.ttf

└─Sources
        boot.wim

   启动方式为bootmgr读取bootcd文件,bcd文件中包含的RAM镜像Sourcesoot.wim。

   2、用bootsect.exe实现U盘的引导。(注意选择盘符u:)
   运行  :
bootsect /nt60 u: /force /mbr

    3、创建bcd引导配置文件。 运行


bcdedit /createstore c:123                                                     �
bcdedit /store c:123 /create {bootmgr} /d "Windows Boot Manager"                 �
bcdedit /store c:123 /set {bootmgr} device boot                           �
bcdedit /store c:123 /timeout 3                                                 �
bcdedit /store c:123 /set {bootmgr} locale "zh-CN" �

    4、创建RAM入口

bcdedit /store c:123 /create {ramdiskoptions} /d "启动 Windows PE"
bcdedit /store c:123 /set {ramdiskoptions} ramdisksdidevice boot
bcdedit /store c:123 /set {ramdiskoptions} ramdisksdipath ootoot.sdi
bcdedit /store c:123 /create {255d7198-65d8-11dd-ba90-005056c00008} /d "启动 Windows PE" /application osloader

   5、具体配置

bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} device ramdisk=[boot]sourcesoot.wim,{ramdiskoptions}
bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} path windowssystem32ootwinload.exe
bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} osdevice ramdisk=[boot]sourcesoot.wim,{ramdiskoptions}
bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} systemroot windows
bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} winpe yes
bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} detecthal yes
bcdedit /store c:123 /displayorder {255d7198-65d8-11dd-ba90-005056c00008} /addlast

好了,把c:123改名为bcd,按照第1步中的文件目录结构把相应的文件拷贝到U盘上就可以实现U盘启动的WinPE2.0了。

我们还可以进一步完善它
1、虽然设置了 /set {bootmgr} locale “zh-CN” 此时的引导说明还是英文的, 要显示中文,需要相应的mui文件放到bootzh-cn目录。

2、添加MEMTEST.EXE内存测试项

bcdedit /store c:123 /create {memdiag} /d "Windows 内存诊侧"                     �
bcdedit /store c:123 /set {memdiag} device boot                           �
bcdedit /store c:123 /set {memdiag} path ootmemtest.exe                       �
bcdedit /store c:123 /toolsdisplayorder {memdiag} /addlast                       �
bcdedit /store c:123 /set {memdiag} locale "zh-CN" �

   另外还有一种实现U盘启动的WinPE2.0的方法,类似于把WinPE2.0安装到U盘。
  1、展开boot.wim到U盘(注意盘符)
imagex /apply d:sourcesoot.wim 1 u:
   2、创建bcd引导配置文件。 运行


bcdedit /createstore c:123                                                     �
bcdedit /store c:123 /create {bootmgr} /d "Windows Boot Manager"                 �
bcdedit /store c:123 /set {bootmgr} device boot                           �
bcdedit /store c:123 /timeout 3                                                 �
bcdedit /store c:123 /set {bootmgr} locale "zh-CN" �

    3、创建引导入口

bcdedit /store c:123 /create {255d7198-65d8-11dd-ba90-005056c00008} /d "启动 Windows PE" /application osloader

   4、具体配置

bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} device partition=boot
bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} path windowssystem32ootwinload.exe
bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} osdevice partition=boot
bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} systemroot windows
bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} winpe yes
bcdedit /store c:123 /set {255d7198-65d8-11dd-ba90-005056c00008} detecthal yes
bcdedit /store c:123 /displayorder {255d7198-65d8-11dd-ba90-005056c00008} /addlast

    5、拷贝boot文件夹和bootmgr文件到U盘。
   完成

另外,如果用bootsect不能实现U盘引导,可以用diskpart,运行

diskpart
select disk 1
clean
create partition primary
select partition 1
active
format fs=ntfs quick
assign
exit

标签: , ,

19 条评论 发表在“简单创建U盘启动的WinPE2.0”上

  1. 本多忠胜说道:

    U盘怎么做引导菜单呢?

  2. 本多忠胜说道:

    U盘怎么引导win7pe和win8pe呢?

  3. samhjn说道:

    我更亲睐将GRUB4DOS坐位主要引导器,用GRUB¥DOS去引导别的系统。

  4. 雷雷说道:

    WingWy,我在网上找教程,找来找去又找回来了,我看网上好多都是转载你的文章都没有写转载自什么地方,鄙视这种人,在这我请教个问题,我把BOOTMGR做到移动硬盘上了,我想把XP的安装程序放到移动硬盘上用BOOTMGR来引导,这样能实现吗?我没有做成功,但是做成ISO的镜像,刻成光盘都可以用,唯独在移动硬盘上不行。

    • wingwy说道:

      你好,这个问题以前似乎很多人都遇到过,你看看这个讨论,https://www.wingwy.com/guestbook/comment-page-7#comment-3614

  5. 止冰说道:

    看不懂啊
    bootsect根本运行不起

  6. wingwy说道:

    太奇怪了,这我也不清楚

  7. 您好说道:

    拷贝了,可就是不能显示中文!
    重新bcdedit也一样
    不知还要注意什么问题?

  8. wingwy说道:

    在我的2和1pe里面就有,或者你装waik,vista sp1没有的

  9. 您好说道:

    在“RAM方式引导的”的进一步完善的第一步骤中说到:“如果要显示中文,则还要拷贝相应MUI文件”,请问:要拷贝哪一个mui,文件名是什么?从哪里拷贝?(源文件在那个文件夹中?)拷到哪里去?(哪个文件夹?)总共要拷贝几个文件?分别是?
    谢谢

  10. wingwy说道:

    GUID是系统返回的值,第1种方法不需要winload.exe

  11. ivan说道:

    这个文件 也需要在U盘上吗?
    windowssystem32ootwinload.exe

  12. ivan说道:

    请问上面采用的 GUID {255d7198-65d8-11dd-ba90-005056c00008} 是从哪里获得的?
    是不是所有采用U盘做PE启动都用这个GUID?

留下回复(本站有评论邮件通知功能)