无忧启动论坛

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

Windows PE 安装程序编程脚本

[复制链接]
跳转到指定楼层
1#
发表于 2015-5-5 05:01:48 来自手机 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 知彼知己 于 2015-9-3 23:31 编辑

首先感谢wingwy网友的大力支持,本程序适用于winpe2.0以上版本pe,首先复制下列编程进记事本,把txt格式转为bat格式,然后点击打开安装程序,本程序需要配合
Select_Folder.exe和USB.script使用,把本程序
和Select_Folder.exe和USB.script放到PE的ISO解压文件下即可使用,

Select_Folder.exe和USB.script下载地址:



@ECHO OFF
CLS
color 0b

GOTO MENU
:MENU

ECHO. =-=-=-=-=Microsoft Windows PE 安装器=-=-=-=-=
echo ##############################################
echo #            Microsoft Windows PE            #
echo #            欢迎光临微软中国官网                              #
echo #          http://www.microsoft.com          #
echo ##############################################
ECHO.
ECHO  !!!!!!请以管理员身份运行程序!!!!!!
ECHO.
ECHO. 1 安装 Microsoft Windows PE 到 U 盘
ECHO.
ECHO. 2 Windows 2000/XP/2003 统安装 Microsoft Windows PE 到硬盘
ECHO.
ECHO. 3 Windows Vista/7/8 系统安装 Microsoft Windows PE 到硬盘
ECHO.
ECHO. 4 Windows Vista/7/8/8.1 系统安装 Microsoft Windows PE 到硬盘(UEFI模式)
ECHO.
ECHO. 5 从硬盘卸载 Microsoft Windows PE
ECHO.  
ECHO. 6 自定义修改 Microsoft Windows PE 光盘
ECHO.
ECHO. 7 Wimboot 方式安装 Microsoft Windows PE 到硬盘(PE重启后可以保留更改)
ECHO.
ECHO. 8 退出程序
ECHO.
echo. 请输入选择项目的序号:

set /p ID=
if "%id%"=="1" goto cmd1

if "%id%"=="2" goto cmd2

if "%id%"=="3" goto cmd3

IF "%id%"=="4" goto cmd4

IF "%id%"=="5" goto cmd5

if "%id%"=="6" goto cmd6

IF "%id%"=="7" goto cmd7

IF "%id%"=="8" exit
PAUSE

:cmd1

echo 安装将格式化U盘,请郑重选择.特别注意不要选错U盘设备号.
echo 如有损失,本程序不负任何责任.
pause


echo 请输入U盘的盘符,如在M:盘则输入  M  (不用输入:)
set /p PP=U盘的盘符:
echo 您选择的USB盘符是 %PP%
echo #####################################################
echo 请输入U盘的编号,磁盘从0开始,如果你的计算机只有1块硬盘,
echo 那么你的u盘编号就是1,则输入 1   依次类推  
set /p NO_D=U盘的编号:
echo 您选择的U盘编号是 %NO_D%
echo #####################################################
echo 请输入U盘的分区号,分区从1开始,如果你的U盘只有1个分区,
echo 那么你的u盘分区号就是1,则输入 1    依次类推
set /p NO_P=U盘的分区号:
echo 您选择的U盘分区号是 %NO_P%
echo #####################################################
echo 格式化U盘,安装中......
diskpart /s USB.script
.\BOOT\bootsect /nt60 %PP%: /force /mbr
echo U盘引导信息更新完成!

echo 文件复制中......

copy bootmgr %PP%:\
xcopy /s/e/y/d boot %PP%:\boot\
xcopy /s/e/y/d winpe %PP%:\winpe\

attrib %PP%:\boot +r +s +h
attrib %PP%:\winpe +r +s +h
attrib %PP%:\bootmgr +r +s +h


pause
goto MENU

:cmd2

echo 2000/XP/2003系统安装Microsoft Windows PE将改变启动设置,
echo 如果您不清楚您在干什么,请郑重选择.
echo 特别注意不要选错启动盘.
echo 如有损失,本程序不负任何责任.
pause


echo 请输入启动盘的盘符,如在C:盘则输入  C  不用输入冒号:
set /p PP=启动盘的盘符:
echo 您选择的启动盘的盘符是 %PP%
echo #########################################
if not exist %PP%:\ntldr (echo 注意:不存在XP引导文件,请退出脚本,并重选启动盘!!!
pause
exit)

copy .\boot\bcdedit.exe %windir%\bcdedit.exe
copy bootmgr %PP%:\
.\BOOT\bootsect /nt60 %PP%: /force /mbr
md %PP%:\boot
xcopy /s/e/y/d boot %PP%:\boot\

set bcd_path=%PP%:\boot\bcd


bcdedit /store %bcd_path%  /timeout 3

bcdedit /store %bcd_path% /create {ntldr} /d "Microsoft Windows XP/2003"
bcdedit /store %bcd_path% /set {ntldr} device partition=%PP%:
bcdedit /store %bcd_path% /set {ntldr} path \ntldr
bcdedit /store %bcd_path% /displayorder {ntldr} /addlast
bcdedit /store %bcd_path% /delete  {faf9f119-385c-11dd-be46-005056c00008} /cleanup
bcdedit /store %bcd_path% /delete  {fb18e2f9-385c-11dd-be46-005056c00008} /cleanup

echo 硬盘引导信息更新为nt60模式!
echo #########################################
pause


echo 请选择Microsoft Windows PE安装的位置(不要选择分区根目录)......

Select_Folder "set d_temp=" "c:" "请选择Microsoft Windows PE安装的位置(不要选择分区根目录)" >%temp%\a.bat
call %temp%\a.bat
del %temp%\a.bat>nul
set d_all=%d_temp:~1,-1%
set d_full=%d_all%\MicrosoftWindowsPE
md %d_full%

echo 文件复制中......
copy .\winpe\*.* %d_full%
copy .\boot\boot.sdi %d_full%
attrib %d_full% +r +s +h
set PP=%d_full:~0,2%
set DP=%d_full:~3%
echo 文件复制完毕,开始添加启动信息.......

bcdedit /store %bcd_path% /timeout 3
set RAMDISK_OPTIONS={e92b8e30-a6e5-41f6-a6b9-188230a23dd2}
set WINPE_GUID={54b4c01f-dce0-102a-a4e0-462c07a00c5e}
bcdedit /store %bcd_path% /create %RAMDISK_OPTIONS% /d "Microsoft Windows PE" /device
bcdedit /store %bcd_path% /set %RAMDISK_OPTIONS% ramdisksdidevice partition=%PP%
bcdedit /store %bcd_path% /set %RAMDISK_OPTIONS% ramdisksdipath \%DP%\boot.sdi
bcdedit /store %bcd_path% /create %WINPE_GUID% /d "Microsoft Windows PE" /application OSLOADER
bcdedit /store %bcd_path% /set %WINPE_GUID% device ramdisk=[%PP%]\%DP%\winpe.wim,%RAMDISK_OPTIONS%
bcdedit /store %bcd_path% /set %WINPE_GUID% path \windows\system32\boot\winload.exe
bcdedit /store %bcd_path% /set %WINPE_GUID% osdevice ramdisk=[%PP%]\%DP%\winpe.wim,%RAMDISK_OPTIONS%
bcdedit /store %bcd_path% /set %WINPE_GUID% systemroot \windows
bcdedit /store %bcd_path% /set %WINPE_GUID% detecthal yes
bcdedit /store %bcd_path% /set %WINPE_GUID% nx optin
bcdedit /store %bcd_path% /set %WINPE_GUID% winpe yes
bcdedit /store %bcd_path% /displayorder %WINPE_GUID% /addlast
echo Microsoft Windows PE 安装完毕。

pause
GOTO MENU

:cmd3
echo 请使用管理员帐户运行
echo
echo 请选择Microsoft Windows PE安装的位置(不要选择分区根目录)......

Select_Folder "set d_temp=" "c:" "请选择Microsoft Windows PE安装的位置(不要选择分区根目录)" >%temp%\a.bat
call %temp%\a.bat
del %temp%\a.bat>nul
set d_all=%d_temp:~1,-1%
set d_full=%d_all%\MicrosoftWindowsPE
md %d_full%

echo 文件复制中......
copy .\winpe\*.* %d_full%
copy .\boot\boot.sdi %d_full%
attrib %d_full% +r +s +h
set PP=%d_full:~0,2%
set DP=%d_full:~3%
echo 文件复制完毕,开始添加启动信息.......

bcdedit /timeout 3
set RAMDISK_OPTIONS={e92b8e30-a6e5-41f6-a6b9-188230a23dd2}
set WINPE_GUID={54b4c01f-dce0-102a-a4e0-462c07a00c5e}
bcdedit /create %RAMDISK_OPTIONS% /d "Microsoft Windows PE" /device
bcdedit /set %RAMDISK_OPTIONS% ramdisksdidevice partition=%PP%
bcdedit /set %RAMDISK_OPTIONS% ramdisksdipath \%DP%\boot.sdi
bcdedit /create %WINPE_GUID% /d "Microsoft Windows PE" /application OSLOADER
bcdedit /set %WINPE_GUID% device ramdisk=[%PP%]\%DP%\winpe.wim,%RAMDISK_OPTIONS%
bcdedit /set %WINPE_GUID% path \windows\system32\boot\winload.exe
bcdedit /set %WINPE_GUID% osdevice ramdisk=[%PP%]\%DP%\winpe.wim,%RAMDISK_OPTIONS%
bcdedit /set %WINPE_GUID% systemroot \windows
bcdedit /set %WINPE_GUID% detecthal yes
bcdedit /set %WINPE_GUID% nx optin
bcdedit /set %WINPE_GUID% winpe yes
bcdedit /displayorder %WINPE_GUID% /addlast
echo Microsoft Windows PE 安装完毕。
pause
GOTO MENU

:cmd4
echo 请使用管理员帐户运行
echo
echo 请选择Microsoft Windows PE安装的位置(不要选择分区根目录)......

Select_Folder "set d_temp=" "c:" "请选择Microsoft Windows PE安装的位置(不要选择分区根目录)" >%temp%\a.bat
call %temp%\a.bat
del %temp%\a.bat>nul
set d_all=%d_temp:~1,-1%
set d_full=%d_all%\MicrosoftWindowsPE
md %d_full%

echo 文件复制中......
copy .\winpe\*.* %d_full%
copy .\boot\boot.sdi %d_full%
attrib %d_full% +r +s +h
set PP=%d_full:~0,2%
set DP=%d_full:~3%
echo 文件复制完毕,开始添加启动信息.......

bcdedit /timeout 3
set RAMDISK_OPTIONS={e92b8e30-a6e5-41f6-a6b9-188230a23dd2}
set WINPE_GUID={54b4c01f-dce0-102a-a4e0-462c07a00c5e}
bcdedit /create %RAMDISK_OPTIONS% /d "Microsoft Windows PE(UEFI)" /device
bcdedit /set %RAMDISK_OPTIONS% ramdisksdidevice partition=%PP%
bcdedit /set %RAMDISK_OPTIONS% ramdisksdipath \%DP%\boot.sdi
bcdedit /create %WINPE_GUID% /d "Microsoft Windows PE(UEFI)" /application OSLOADER
bcdedit /set %WINPE_GUID% device ramdisk=[%PP%]\%DP%\winpe.wim,%RAMDISK_OPTIONS%
bcdedit /set %WINPE_GUID% path \windows\system32\winload.efi
bcdedit /set %WINPE_GUID% osdevice ramdisk=[%PP%]\%DP%\winpe.wim,%RAMDISK_OPTIONS%
bcdedit /set %WINPE_GUID% systemroot \windows
bcdedit /set %WINPE_GUID% detecthal yes
bcdedit /set %WINPE_GUID% nx optin
bcdedit /set %WINPE_GUID% winpe yes
bcdedit /displayorder %WINPE_GUID% /addlast
echo Microsoft Windows PE(UEFI启动模式)安装完毕。
pause
GOTO MENU


:cmd5
echo 卸载中......
bcdedit /delete {54b4c01f-dce0-102a-a4e0-462c07a00c5e} /cleanup /f
pause
GOTO MENU


:cmd6
echo 请使用管理员帐户运行

echo 请选择Microsoft Windows PE的工作空间(不要选择分区根目录)......
setlocal
Select_Folder "set d_temp=" "c:" "请选择Microsoft Windows PE的工作空间(不要选择分区根目录)" >%temp%\mype.bat
call %temp%\mype.bat
del %temp%\mype.bat>nul
set d_all=%d_temp:~1,-1%
set d_full=%d_all%\ISO
set my_pe=%d_all%\My_PE
md %d_full%
md %my_pe%


echo 文件复制中......
xcopy .\*.* %d_full% /s /y /d
echo 文件复制完成......
attrib %d_full%\winpe\winpe.wim -r

echo 正在展开Microsoft Windows PE文件......
.\boot\imagex /apply %d_full%\winpe\winpe.wim 1 %my_pe%


echo ##################################################
echo 文件展开完成请自己修改Microsoft Windows PE......
echo 注意:
echo Microsoft Windows PE文件在%my_pe% 下
echo 光盘文件在%d_full% 下
echo ##################################################
pause
:custom
echo Microsoft Windows PE修改是否完成?若完成修改,按"y"自动生成新Microsoft Windows PE光盘。按其他任意键则继续修改。
set /p c=###########修改完了吗?###########
if %c%==y goto makecd
goto custom

:makecd
echo 正在打包Microsoft Windows PE文件......
.\boot\imagex /capture /compress max /boot %my_pe% %d_full%\winpe\winpe.wim "Microsoft Windows PE"  "my own winpe"
echo 正在生成光盘ISO文件......
.\boot\oscdimg -m -o -u2 -udfver102 -lmy-pe-uefi -bootdata:2#p0,e,b%d_full%\boot\etfsboot.com#pEF,e,b%d_full%\efi\microsoft\boot\efisys.bin %d_full% %d_all%\My_PE.ISO
echo 成功完成,新Microsoft Windows PE光盘位置在 %d_all%\My_PE.ISO
pause
GOTO MENU

:cmd7
cls
echo  Wimboot方式安装 Microsoft Windows PE 到硬盘
echo  此选项仅对支持wimboot的系统有效
echo  满足以下任意一个条件即可:
echo  ########################################################
echo  (1) 您正在运行 Microsoft Windows PE 5.1
echo  (2) 您正在运行 Microsoft Windows 8.1 Update 或更新的系统
echo  ########################################################
echo  如果不是请关闭此窗口!
pause
echo 您想用wimboot方式把Microsoft Windows PE安装到哪个盘?
echo (不要安装到现有系统盘)
echo 请输入盘符,如想在安装在D:盘则输入  D  (不用输入:)
set /p PP=安装盘的盘符:
echo 您选择的安装盘盘符是 %PP%
if exist %PP%:\windows (echo 注意:您选择的安装盘与现有系统冲突,请退出脚本,并重选安装盘!!!
pause
exit)
pause
md %PP%:\wimboot
echo 正在生成wimboot文件。。。。。
Dism /Export-Image /WIMBoot /SourceImageFile:.\winpe\winpe.wim /SourceIndex:1 /DestinationImageFile:%pp%:\wimboot\wimboot.wim
echo 正在生成指针文件。。。。。
DISM /Apply-Image /ImageFile:%pp%:\wimboot\wimboot.wim /ApplyDir:%PP%: /Index:1 /WIMBoot
echo 正在创建启动项。。。。。
bcdboot %PP%:\windows /l zh-cn
echo 安装完成,重启时选择“Windows预安装环境”即可进入。
pause
GOTO MENU

评分

参与人数 1无忧币 +5 收起 理由
freesoft00 + 5 辛苦,支持一下

查看全部评分

2#
 楼主| 发表于 2015-5-5 05:06:02 来自手机 | 只看该作者
版权归Microsoft Corporation所有,侵权必究
回复

使用道具 举报

3#
 楼主| 发表于 2015-5-5 05:26:29 来自手机 | 只看该作者
本程序第七项支持以wimboot方式安装windows8.1update和windows10,但需要把iso里面的install.wim改为winpe.wim或修改程序,理论上支持将Windows Vista以上系统装成内存系统
回复

使用道具 举报

4#
 楼主| 发表于 2015-5-5 05:32:25 来自手机 | 只看该作者
再次说明本程序需要配合boot.sdi  Select_Folder.exe和USB.script下载使用,其下载地址为
回复

使用道具 举报

5#
发表于 2015-5-5 06:10:06 | 只看该作者
其下载地址为??????
回复

使用道具 举报

6#
发表于 2015-5-5 06:18:14 来自手机 | 只看该作者
好歹你用diskpart把优盘列取一下,不能猜测优盘是磁盘几啊!例如有的电脑装了ramdisk,搞不好磁盘0是虚拟盘,1是硬盘
回复

使用道具 举报

7#
发表于 2015-5-5 06:31:49 | 只看该作者
准备学习中。
回复

使用道具 举报

8#
 楼主| 发表于 2015-5-5 06:43:48 来自手机 | 只看该作者
这个不需要吧,可以手动完成,为了安装的pe的安全,不受病毒感染影响,笔者后期制作会考虑加入winpe高级隐藏项,欢迎关注
回复

使用道具 举报

9#
发表于 2015-5-5 07:41:13 来自手机 | 只看该作者
空盘呢?
回复

使用道具 举报

10#
 楼主| 发表于 2015-5-5 07:47:21 来自手机 | 只看该作者
什么空盘?
回复

使用道具 举报

11#
 楼主| 发表于 2015-5-5 07:48:33 来自手机 | 只看该作者
请问哪里出错了吗
回复

使用道具 举报

12#
 楼主| 发表于 2015-5-5 07:56:43 来自手机 | 只看该作者
本程序为测试版,欲需下载地址,还请知粉支持,笔者开发也是蛮辛苦的,就怕你们不识货啊
回复

使用道具 举报

13#
 楼主| 发表于 2015-5-5 07:56:43 来自手机 | 只看该作者
本程序为测试版,欲需下载地址,还请知粉支持,笔者开发也是蛮辛苦的,就怕你们不识货啊
回复

使用道具 举报

14#
 楼主| 发表于 2015-5-5 07:57:34 来自手机 | 只看该作者
欲要本程序所有功能,还需粉丝支持啊,暂未公布下载地址
回复

使用道具 举报

15#
 楼主| 发表于 2015-5-5 08:04:13 来自手机 | 只看该作者
笔者会根据本程序受欢迎程度放出下载地址,敬请关注
回复

使用道具 举报

16#
发表于 2015-5-5 08:06:22 | 只看该作者
这个太高深,看不懂啊
回复

使用道具 举报

17#
 楼主| 发表于 2015-5-5 08:34:13 来自手机 | 只看该作者
程序图片如下,本程序为试用版,如果你喜欢全部功能,笔者将根据本程序受欢迎程度再放出下载地址

2015-05-05_082952.png (60.2 KB, 下载次数: 23)

2015-05-05_082952.png
回复

使用道具 举报

18#
发表于 2015-5-5 13:55:30 | 只看该作者
好东西,放出来吧
回复

使用道具 举报

19#
 楼主| 发表于 2015-5-5 13:57:41 来自手机 | 只看该作者
谢谢支持
回复

使用道具 举报

20#
发表于 2015-5-5 20:48:19 | 只看该作者
不错,前排留名……——
回复

使用道具 举报

21#
发表于 2015-5-5 20:49:49 | 只看该作者
好东西,放出来吧
回复

使用道具 举报

22#
 楼主| 发表于 2015-5-6 00:35:07 来自手机 | 只看该作者
谢谢各位支持
回复

使用道具 举报

23#
发表于 2015-5-6 11:32:03 | 只看该作者
支持大大,辛苦了
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-12-1 13:36

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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