无忧启动论坛

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

毛桃原版pe安装程序的修改完善

[复制链接]
跳转到指定楼层
1#
发表于 2009-2-26 22:25:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
毛桃原版pe安装程序不支持自定义选择外置程序的盘符,这个谁会能不能修改一下共享出来。
要不C盘格式化不了。
论坛上好几个pe都是按照毛桃那个pe的目录结构来的,比较通用。
如果毛桃那个安装程序有什么不完善或者是bug的地方希望也能修正一下。

[ 本帖最后由 freesoft00 于 2009-3-31 20:09 编辑 ]
2#
发表于 2009-2-26 22:59:34 | 只看该作者
小马的安装程序我倒是有,小马的好像是改的老毛桃的,

@Echo Off
COLOR 5f
Set Prog=WinPE系统维护工具
Set L1=      ╭══════════════════╮
Set L2=      ║                  ║
Set L3=   ╭══┤        WinPE系统维护工具          ├══╮
Set L4=   ║  ║                  ║  ║
Set L5=   ║  ╰══════════════════╯  ║
Set L6=   ║                        ║
Set L7=   ╟════════════════════════╢
Set L8=   ║    版权所有                    盗版不究    ║
Set L9=   ╰════════════════════════╯
Title %Prog%

Set PEFile=WINPE.IS_
Set PEIni=MINIPE\WinPE.INI
Set LogFile=PEInstall.log
Set AddATTR=ATTRIB +S +H +R
Set DelATTR=ATTRIB -S -H -R

:CheckOS
if /i not "%os%."=="Windows_NT." goto SystemErro
::判断系统版本并设置TheOS
ver|find /i " 6.0">nul &&set Winver=vista&&  set TheOS=Vista
ver|find /i " 5.0">nul &&set Winver=winnt&&  set TheOS=2000
ver|find /i " 5.1">nul &&set Winver=winnt&&  set TheOS=XP
ver|find /i " 5.2">nul &&set Winver=winnt&&  set TheOS=2003
goto Start

:SystemErro
cls
Echo.
Echo.
Echo  注意:未经测试,本软件可能不适用于非 Windows PE/2000/XP/2003/Vista 操作系统。
Echo  按回车键退出安装程序
Pause >nul
Exit

:Start
CLS
Title %Prog%——安装
Echo.
Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo    ║  请选择安装方式:               ║
Echo %L6%
Echo    ║                                            ║
Echo    ║    [1] 普通安装/启动        (硬盘安装)    ║
Echo    ║    [2] 安装至U 盘、移动硬盘                  ║
Echo    ║    [3] 安装至U 盘、移动硬盘 (io.sys+grub)    ║
Echo    ║    [Q] 退出安装               ║
Echo %L6%
Echo %L7%
Echo %L8%
Echo %L9%
Echo.
Echo       您现在使用的是 Windows %TheOS% 操作系统 !
if "%TheOS%"=="XP" Echo       ( 或 Windows XP 核心的 WinPE )
if "%TheOS%"=="2003" Echo       ( 或 Windows 2003 核心的 WinPE )
if "%TheOS%"=="Vista" Echo       ( 请确保您拥有管理员权限以及关闭了UAC,否则安装可能失败 )
Echo.

Set Choice=
Set /P Choice=   请选择要进行的操作 (1/2/3/Q) ,然后按回车:
If "%Choice%"=="" Goto Start
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="1" Goto HD
If /I "%Choice%"=="2" Goto UD
If /I "%Choice%"=="3" Goto UD2
If /I "%Choice%"=="Q" Exit
Goto Start

:HD
Set RP=
For %%I In (Z Y X W V U T S R Q P O N M L K J I H G F E D C) Do If Exist %%I:\BOOT.INI Set RP=%%I:
Set PEDIR=%RP%\MINIPE
Set TargetP=硬盘&&Set TxtSp=
If Exist %PEDIR% Goto Err1
FIND /I "%RP%\MINIPE" %RP%\BOOT.INI>NUL 2>NUL
If "%Errorlevel%"=="0" Goto Err1

if /i "%TheOS%"=="Vista" (
       goto :Vista_Install
) Else (
       goto :Pubilc_Install
)
Goto :HD


:UD
CLS
Title %Prog%——U 盘安装
For /F "skip=2 tokens=*" %%I In ('MYINS\CHECKUSB.EXE') DO SET Us=%%I
::这里的%Us%是U盘的盘符
If "%Us%"=="当前可移动磁盘分区:" Goto NoUD
Echo %Us%&&Echo.
If "%NoUD%"=="Yes" Echo 错误:您设定的分区 %RP% 不存在、写保护、未格式化或不是 U 盘分区,请按任意键重新设定。&&Echo.
Set /P RP=请选择您的 U 盘盘符(不需要冒号,例如 F):
Echo.&&Echo.
If "%RP%"=="" Goto UD
If Not "%RP%"=="" Set RP=%RP:~0,1%:
MYINS\FSUTIL.EXE FSINFO DRIVETYPE %RP%|FIND "可移动驱动器">NUL 2>NUL
If Not "%Errorlevel%"=="0" Set NoUD=Yes&&Goto UD
Set TestFile=%RP%\MaotaoTest_%RANDOM%.MT
Cd.>%TestFile%
If Not Exist %TestFile% Set NoUD=Yes&&Goto UD
Del %TestFile% /Q>NUL 2>NUL
Set U=U&&Set PEDIR=%RP%\MAOTAO&&Set OP=%RP%&&Set TargetP= U 盘
CLS
Echo 您选择的 U 盘分区为 %RP%,下面将对您的 U 盘进行格式化并写入引导
Echo.
Echo 请严格按照相关工具软件界面中的提示操作,以防出错。请按任意键开始。。。
PAUSE>NUL
Start /Wait MYINS\HPUSBFW.EXE
Start /Wait MYINS\GRUBGUI.EXE
Echo.
Echo 您的 U 盘已经成功格式化并写入了 Grub 引导,请按任意键继续。。。
PAUSE>NUL
Goto GInstall


:UD2
CLS
Title %Prog%——U 盘安装
For /F "skip=2 tokens=*" %%I In ('MYINS\CHECKUSB.EXE') DO SET Us=%%I
::这里的%Us%是U盘的盘符
If "%Us%"=="当前可移动磁盘分区:" Goto NoUD
Echo %Us%&&Echo.
If "%NoUD%"=="Yes" Echo 错误:您设定的分区 %RP% 不存在、写保护、未格式化或不是 U 盘分区,请按任意键重新设定。&&Echo.
Set /P RP=请选择您的 U 盘盘符(不需要冒号,例如 F):
Echo.&&Echo.
If "%RP%"=="" Goto UD2
If Not "%RP%"=="" Set RP=%RP:~0,1%:
For /F %%I In ('MYINS\CHECKUSB.EXE %RP%') DO SET Err2=%%I
If Not "%Err2%"=="1" Set NoUD=Yes&&Goto UD2
::上面这里测试了输入的U盘盘符是否存在或不是U盘分区或(未格式化)::未格式化这里不知道能不能检测出来,估计是下面的代码的工作,

Set TestFile=%RP%\MiniPETest_%RANDOM%.MT
Cd.>%TestFile%
If Not Exist %TestFile% Set NoUD=Yes&&Goto UD2
Del %TestFile% /Q>NUL 2>NUL
::上面这里测试了U盘是否写保护或未格式化

Set U=U&&Set PEDIR=%RP%\MINIPE
Set TargetP= U 盘&&Set TxtSp=
::那个Set U=U用来干什么的?
CLS
Echo 您选择的 U 盘分区为 %RP%,下面将对您的 U 盘进行格式化并写入引导
Echo.
Echo 请严格按照相关工具软件界面中的提示操作,以防出错。请按任意键开始.......
Echo 如果您对此软件的使用不太清楚,请参见本系统光盘根目录附带的说明文件。
PAUSE>NUL
Start /Wait HPUSBFW.exe
%DelATTR% %RP%\io.sys&%DelATTR% %RP%\command.com
del /q /f %RP%\io.sys
del /q /f %RP%\command.com
ECHO 正在拷贝文件,请耐心等待..................
copy io.sys %RP% /Y>nul 2>nul
XCOPY boot /E %RP%\boot\ /Y /H /R>NUL 2>NUL
If Not Exist %PEDIR% MD %PEDIR%
Copy ..\%PEFile% %PEDIR% /Y>NUL 2>NUL
XCOPY ..\MINIPE /E %RP%\MINIPE\ /Y /H /R>NUL 2>NUL
%AddATTR% %RP%\IO.SYS /S /D
%AddATTR% %RP%\MINIPE /S /D
%AddATTR% %RP%\MINIPE\*.* /S /D
%AddATTR% %RP%\boot /S /D
%AddATTR% %RP%\boot\*.* /S /D
Goto SUCCESS



:NoUD
CLS
Title %Prog%——U 盘安装
Echo.
Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo    ║ 您的计算机似乎没有安装 U 盘,您想怎么办?   ║
Echo %L6%
Echo    ║  [B] 返回首页,重新选择安装选项。      ║
Echo    ║  [Q] 退出安装                ║
Echo %L6%
Echo %L7%
Echo %L8%
Echo %L9%
Echo.
Set Choice=
Set /P Choice=   请选择要进行的操作 (B/Q) ,然后按回车:
If "%Choice%"=="" Goto NoUD
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="B" Goto Start
If /I "%Choice%"=="Q" Exit
Goto NoUD
Exit



:Err1
CLS
Title %Prog%——卸载
Echo.
Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo    ║ 您的%TargetP%中好像已经安装了 WinPE,您想怎么办?%TxtSp% ║
Echo %L6%
Echo    ║  [1] 卸载原有的 WinPE,并且重新安装。    ║
Echo    ║  [2] 卸载原有的 WinPE,并且不再安装。    ║
Echo    ║  [B] 返回首页,重新选择安装选项。      ║
Echo    ║  [Q] 退出安装                ║
Echo %L6%
Echo %L7%
Echo %L8%
Echo %L9%
Echo.
Set Choice=
Set /P Choice=   请选择要进行的操作 (1/2/B/Q) ,然后按回车:
If "%TargetP%"=="硬盘" Set U=
If "%Choice%"=="" Goto Err1
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="1" Set Choi=1&&Goto UnInstall
If /I "%Choice%"=="2" Goto UnInstall
If /I "%Choice%"=="B" Goto Start
If /I "%Choice%"=="Q" Exit
Goto Err1
Exit

:UnInstall
if /i "%TheOS%"=="Vista" (
       goto :Vista_UnInstall
) Else (
       goto :Pubilc_UnInstall
)

:Pubilc_UnInstall
If Exist %RP%\LDRXPE %DelATTR% %RP%\LDRXPE&&Del %RP%\LDRXPE /Q>NUL 2>NUL
If Exist %RP%\WINNT.XPE %DelATTR% %RP%\WINNT.XPE&&Del %RP%\WINNT.XPE /Q>NUL 2>NUL
If Exist %RP%\MTLDR.PE %DelATTR% %RP%\MTLDR.PE&&Del %RP%\MTLDR.PE /Q>NUL 2>NUL
If Exist %RP%\MTLDR %DelATTR% %RP%\MTLDR&&Del %RP%\MTLDR /Q>NUL 2>NUL
If Exist %RP%\%LogFile% For /F "eol=; tokens=2 delims=^=" %%i In ('find /I ^"WinPE外挂位置^" %RP%\%LogFile%') do SET OPD=%%i
If Not "%U%"=="" Set OPD=%RP%

If Exist %RP%\%LogFile% %DelATTR% %RP%\%LogFile%&&Del %RP%\%LogFile% /Q>NUL 2>NUL
If Exist %RP%\PELDR %DelATTR% %RP%\PELDR&&Del %RP%\PELDR /Q>NUL 2>NUL
If Exist %RP%\MINIPE RD %RP%\MINIPE /S /Q>NUL 2>NUL
If Exist %OPD%\MINIPE RD %OPD%\MINIPE /S /Q>NUL 2>NUL

%DelATTR% %RP%\BOOT.INI>NUL 2>NUL
If Exist %RP%\BOOT.BAK (
%DelATTR% %RP%\BOOT.BAK
TYPE %RP%\BOOT.BAK|FIND /I /V "%RP%\MINIPE">%RP%\BOOT.INI
) Else (
If Exist %RP%\BOOT.INI Copy %RP%\BOOT.INI %RP%\BOOT.BAK /Y>NUL 2>NUL
If Exist %RP%\BOOT.BAK TYPE %RP%\BOOT.BAK|FIND /I /V "C:\MINIPE">%RP%\BOOT.INI
)
If Exist %RP%\BOOT.BAK %DelATTR% %RP%\BOOT.BAK&&Del %RP%\BOOT.BAK>NUL 2>NUL
If Exist %RP%\BOOT.INI %AddATTR% %RP%\BOOT.INI >NUL 2>NUL

Set RP=
Title %Prog%——卸载完成
If "%Choi%"=="1" (Echo.&&Echo.&&Echo    卸载完成,请按任意键准备安装 。。。&&PAUSE>NUL 2>NUL&&Goto Start)
Echo.&&Echo.&&Echo    卸载完成,请按任意键退出 。。。
PAUSE>NUL 2>NUL
Exit


::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:vista_UnInstall
for /f "tokens=1 delims=:" %%i In ('findstr /n %gname2%   %SystemRoot%\temp_bcd.txt') Do (
                Set nid=%%i
)
set /a nid=%nid%-2
findstr /n identifier %SystemRoot%\temp_bcd.txt>%SystemRoot%\temp_bcd1.txt

)
for,/f,"tokens=1",%%i,In (%SystemRoot%\vid.ini) Do (
                set vid=%%i
)
bcdedit /delete %vid% /cleanup >nul
bcdedit /timeout %timeout% >nul
bcdedit >%SystemRoot%\temp_bcd.txt
del %SystemRoot%\temp_bcd.txt >nul 2>nul
del %SystemRoot%\temp_bcd1.txt >nul 2>nul
del %SystemRoot%\vid.ini >nul 2>nul

If Exist %RP%\PELDR %DelATTR% %RP%\PELDR&&Del %RP%\PELDR /Q>NUL 2>NUL
If Exist %RP%\NTDETECT.COM %DelATTR% %RP%\NTDETECT.COM&&Del %RP%\NTDETECT.COM /Q>NUL 2>NUL
If Exist %RP%\WINNT.XPE %DelATTR% %RP%\WINNT.XPE&&Del %RP%\WINNT.XPE /Q>NUL 2>NUL
If Exist %RP%\%LogFile% For /F "eol=; tokens=2 delims=^=" %%i In ('find /I ^"WinPE外挂位置^" %RP%\%LogFile%') do SET OPU=%%i
If Not "%U%"=="" Set OPU=%OP%

If Exist %OPU%\MINIPE RD %OPU%\MINIPE /S /Q>NUL 2>NUL
If Exist %RP%\%LogFile% %DelATTR% %RP%\%LogFile%&&Del %RP%\%LogFile% /Q>NUL 2>NUL
If Exist %RP%\MINIPE RD %RP%\MINIPE /S /Q>NUL 2>NUL
f Exist %RP%\BOOTFONT.BIN %DelATTR% %RP%\BOOTFONT.BIN&&Del %RP%\BOOTFONT.BIN /Q>NUL 2>NUL
Title %Prog%——卸载完成
If "%Choi%"=="1" (Echo.&&Echo.&&Echo    卸载完成,请按任意键准备安装.........&&PAUSE>NUL 2>NUL&&Goto Start)
Echo.&&Echo.&&Echo    卸载完成,请按任意键退出.........
PAUSE>NUL 2>NUL
Exit

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:Vista_Install
For %%I In (Z Y X W V U T S R Q P O N M L K J I H G F E D C) Do If Exist %%I:\BOOTMGR Set RP=%%I:
Set PEDIR=%RP%\MINIPE

set vid=
set timeout=5
set gnameWinPE系统维护
set gname2=\MINIPE\AVLDR

bcdedit >%RP%\windows\temp_bcd.txt
If Exist %PEDIR% Goto Err1
If "%OP%"=="" Call :SetExtra
Set TargetP=硬盘 && Set TxtSp=
If "%OP%"=="" Call :SetExtra

bcdedit   /create /d "%gname%" /application bootsector >c:\windows\vid.ini
If Not Exist %PEDIR% MD %PEDIR%>NUL 2>NUL
If Exist %RP%\WINNT.XPE %DelATTR% %RP%\WINNT.XPE
Echo 正在复制文件,请稍候 ............
::::
copy ..\WXPE\SETUPLDR.BIN %RP%\PELDR >nul
copy ..\WXPE\AVLDR %RP%\MINIPE\AVLDR >nul 2>nul
copy ..\WXPE\WINNT.XPE %RP% >nul

for /f "tokens=2 delims={" %%i In (c:\windows\vid.ini) Do (
               set vida=%%i
)
for /f "tokens=1 delims=}" %%i In ("%vida%") Do (
               set vid={%%i}
)
echo %vid%>c:\windows\vid.ini
bcdedit   /set %vid% device partition=c:   >nul
bcdedit   /set %vid% path %gname2% >nul
bcdedit   /displayorder %vid% /addlast >nul
bcdedit   /timeout   %timeout% >nul
del c:\windows\temp_bcd.txt >nul 2>nul
del c:\windows\temp_bcd1.txt >nul 2>nul
Call :vista_CopyAndSetFiles
Goto SUCCESS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:Pubilc_Install
Title %Prog%——普通安装
If "%OP%"=="" Call :SetExtra
If Not Exist %PEDIR% MD %PEDIR%>NUL 2>NUL

Echo 正在复制文件,请稍候 ............
copy ..\WXPE\SETUPLDR.BIN %RP%\PELDR >nul
copy ..\WXPE\AVLDR %RP%\MINIPE\AVLDR >nul 2>nul
copy ..\WXPE\WINNT.XPE %RP% >nul

Call :Pubilc_CopyAndSetFiles
Goto SUCCESS

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:GInstall
If "%U%"=="" Title %Prog%——Grub安装
CLS
Set DefItem=0&&Set LDRP=MAOTAO\
If "%U%"=="" Set DefItem=1&&If "%OP%"=="" Call :SetOP
Echo 请输入您要设定的密码
Echo 注意:密码中不许有空格、"\"、引号等特殊字符
Echo.
Set /P Pass1=请输入:
If "%Pass1%"=="" Goto GInstall
Echo.&&Echo.
Echo 请再一次输入您的密码
Echo.
Set /P Pass2=请再次输入:
If "%Pass2%"=="" Goto GInstall
If Not "%Pass2%"=="%Pass1%" Echo.&&Echo 您两次输入的密码不一致,请重新输入&&Echo 请按任意键重新开始设置密码&&PAUSE>NUL 2>NUL&&Goto GInstall
If Not Exist %PEDIR% MD %PEDIR%>NUL 2>NUL
>%PEDIR%\MD5P.TMP <nul Set/p=%Pass2%
MD5.EXE %PEDIR%\MD5P.TMP %PEDIR%\MD5R.TXT>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% MTLDR -r -y>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% MTLDR%U%.BIN -r -y>NUL 2>NUL
>>%RP%\MTLDR Echo default %DefItem%
>>%RP%\MTLDR Echo timeout 5
>>%RP%\MTLDR Echo.
For /f %%i In ('type %PEDIR%\md5r.txt') do echo password --md5 %%i>>%RP%\MTLDR
Echo fontfile /maotao/muifont.gz>>%RP%\MTLDR
Echo splashimage /maotao/bj2008.xpm.gz>>%RP%\MTLDR
>>%RP%\MTLDR Echo.
Echo title WinPE  By: Maotao>>%RP%\MTLDR
For /f %%i In ('type %PEDIR%\md5r.txt') do echo password --md5 %%i>>%RP%\MTLDR
Copy /b %RP%\MTLDR+%PEDIR%\MTLDR%U%.bin %RP%\MTLDR>NUL 2>NUL
Del %PEDIR%\MD5?.* /Q>NUL 2>NUL
Del %PEDIR%\MTLDR%U%.bin /Q>NUL 2>NUL
Echo.
Echo 密码设置完成,请牢记您的密码,并按任意键继续 。。。
PAUSE>NUL 2>NUL
If Exist %RP%\LDRXPE %DelATTR% %RP%\LDRXPE
If Exist %RP%\WINNT.XPE %DelATTR% %RP%\WINNT.XPE
If Exist %RP%\MTLDR %DelATTR% %RP%\MTLDR
Echo.
Echo 正在复制文件,请稍候 。。。
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% BJ2008.XPM.GZ -r -y>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% muifont.gz -r -y>NUL 2>NUL
If "%U%"=="" MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR%\ maotaog.bin -r -y>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP%\ WINNT.XPE -r -y>NUL 2>NUL
If "%U%"=="" Ren %PEDIR%\maotaog.bin maotao.bin
Call :CopyAndSetFiles
Goto SUCCESS


:CopyAndSetFiles
For /F "tokens=2 delims=." %%i In ('Ver') DO Set SysVer=%%i
If "%U%"=="" If %SysVer:~0,1% LSS 1 Set SysVer=2K
MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP%\%LDRP% LDRXPE -r -y>NUL 2>NUL
If Not Exist %RP%\NTDETECT.COM MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% NTDETECT.COM -r -y>NUL 2>NUL
Copy ..\%PEFile% %PEDIR% /Y>NUL 2>NUL
If "%U%"=="" %DelATTR% %RP%\BOOT.INI
If "%U%"=="" If Exist %RP%\BOOT.BAK %DelATTR% %RP%\BOOT.BAK
If "%U%"=="" Copy %RP%\BOOT.INI %RP%\BOOT.BAK>NUL 2>NUL
If "%U%"=="" TYPE %RP%\BOOT.BAK|FIND /I /V "C:\MAOTAO">%RP%\BOOT.INI
If "%U%"=="" Echo C:\MAOTAO\MAOTAO.BIN="WinPE系统维护">>%RP%\BOOT.INI
If /I "%SysVer%"=="2K" (
        %DelATTR% %RP%\NTLDR&&%DelATTR% %RP%\bootfont.bin
        Ren %RP%\NTLDR NTLDR.2K&&Ren %RP%\bootfont.bin bootfont.bin.2K
        MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% NTLDR -r -y>NUL 2>NUL
        MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% bootfont.bin -r -y>NUL 2>NUL
)
XCOPY ..\MINIPE /E %OP%\MINIPE\ /Y /H /R>NUL 2>NUL
If Exist %OP%\%PEIni% %DelATTR% %OP%\%PEIni%
TYPE ..\%PEIni%|FIND /I /V "PESETUP.EXE">%OP%\%PEIni%
>>%RP%\WINNT.XPE <nul Set/p=/rdexportascd /rdpath=MAOTAO\%PEFile%"
%AddATTR% %RP%\%LDRP%LDRXPE
%AddATTR% %RP%\NTDETECT.COM
%AddATTR% %RP%\WINNT.XPE
If "%U%"=="" %AddATTR% %RP%\BOOT.INI
%AddATTR% %RP%\MAOTAO /S /D
%AddATTR% %RP%\MAOTAO\*.* /S /D
%AddATTR% %OP%\MINIPE /S /D
%AddATTR% %OP%\MINIPE\*.* /S /D
If Exist %RP%\MTLDR.PE %AddATTR% %RP%\MTLDR.PE
If Exist %RP%\MTLDR %AddATTR% %RP%\MTLDR
If "%U%"=="" Call :添加日志
Goto :EOF

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:Pubilc_CopyAndSetFiles
If Not Exist %RP%\NTDETECT.COM copy ..\WXPE\NTDETECT.COM %RP% >NUL 2>NUL
If Not Exist %RP%\NTLDR MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% NTLDR -r -y>NUL 2>NUL
If "%U%"=="" For /F %%i In ("%RP%\NTLDR") Do If %%~zi LSS 250000 Set SysVer=2K
If "%NoLDR%"=="" MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP%\%LDRP% LDRXPE -r -y>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% NTCOM -r -y>NUL 2>NUL
::If Not Exist %RP%\NTLDR MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% NTLDR -r -y>NUL 2>NUL
Copy ..\%PEFile% %PEDIR% /Y>NUL 2>NUL
IF NOT "%OP%"=="" XCOPY ..\MINIPE /E %OP%\MINIPE\ /Y /H /R>NUL 2>NUL
IF NOT "%OP%"=="" %AddATTR% %OP%\MINIPE /S /D
If "%U%"=="" If Exist %RP%\BOOT.INI %DelATTR% %RP%\BOOT.INI
If "%U%"=="" If Exist %RP%\BOOT.INI If Exist %RP%\BOOT.BAK %DelATTR% %RP%\BOOT.BAK
If "%U%"=="" If Exist %RP%\BOOT.INI Copy %RP%\BOOT.INI %RP%\BOOT.BAK>NUL 2>NUL
If "%U%"=="" If Exist %RP%\BOOT.INI TYPE %RP%\BOOT.BAK|FIND /I /V "%RP%\MINIPE">%RP%\BOOT.INI
If "%U%"=="" If Exist %RP%\BOOT.INI Echo %RP%\MINIPE\AVLDR="WinPE系统维护">>%RP%\BOOT.INI
If /I "%SysVer%"=="2K" (
        %DelATTR% %RP%\NTLDR&&%DelATTR% %RP%\bootfont.bin
        Ren %RP%\NTLDR NTLDR.2K&&Ren %RP%\bootfont.bin bootfont.bin.2K
        MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% NTLDR -r -y>NUL 2>NUL
        MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% bootfont.bin -r -y>NUL 2>NUL
)
If Exist %RP%\%PEIni% %DelATTR% %RP%\%PEIni%
%AddATTR% %RP%\MINIPE /S /D
%AddATTR% %RP%\MINIPE\*.* /S /D
%AddATTR% %OP%\MINIPE /S /D
%AddATTR% %OP%\MINIPE\*.* /S /D
%AddATTR% %RP%\PELDR /S /D
%AddATTR% %RP%\WINNT.XPE /S /D
%AddATTR% %RP%\BOOT.BAK /S /D

If Exist %RP%\BOOT.INI %AddATTR% %RP%\BOOT.INI
If Exist %RP%\%LDRP%LDRXPE %AddATTR% %RP%\%LDRP%LDRXPE
If Exist %RP%\MTLDR.PE %AddATTR% %RP%\MTLDR.PE
If Exist %RP%\MTLDR %AddATTR% %RP%\MTLDR
If "%U%"=="" Call :添加日志
Goto :EOF
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:vista_CopyAndSetFiles
Copy ..\%PEFile% %PEDIR% /Y>NUL 2>NUL
copy ..\bootfont.bin %RP% >nul 2>nul

If Not Exist %RP%\NTDETECT.COM copy ..\WXPE\NTDETECT.COM %RP% >NUL 2>NUL

XCOPY ..\MINIPE /E %OP%\MINIPE\ /Y /H /R>NUL 2>NUL
If Exist %OP%\%PEIni% %DelATTR% %OP%\%PEIni%
%AddATTR% %RP%\NTDETECT.COM
%AddATTR% %RP%\WINNT.XPE
%AddATTR% %RP%\PELDR
%AddATTR% %RP%\MINIPE /S /D
%AddATTR% %OP%\MINIPE /S /D
%AddATTR% %OP%\MINIPE\*.* /S /D
If "%U%"=="" Call :添加日志
Goto :EOF

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:SUCCESS
Title %Prog%——安装完成
CLS
For %%i In (C D E F G H I J K L M N O P Q R S T U V W X Y Z) Do If /I "%RP%"=="%%i:" Set RP=%%i:
Echo 已经成功将镜像 %PEFile% 安装到您的 %RP% 盘。
If "%U%"=="" (
Echo 外置程序 文件夹按照您的设置,复制到了 %OP% 盘。
Echo.
If Exist %RP%\Boot.INI Echo 系统分区中的 BOOT.INI 备份为 BOOT.BAK。(如果是vista系统,启动菜单已经备份)
)
Echo.&&Echo.
Echo 如果您需要将 WinPE 卸载,请重新运行本安装程序。
Echo.
Echo 请按任意键退出......
PAUSE>NUL 2>NUL
Exit

:SetExtra
CLS
If "%NoOP%"=="Yes" Echo 错误:您设定的分区不存在或写保护,请按任意键重新设定。&&Echo.
Set /P OP=请设定 外置程序 存放的分区符[不需要冒号,例如 D(推荐)]:
Echo.&&Echo.
If "%OP%"=="" Goto SetExtra
If Not "%OP%"=="" Set OP=%OP:~0,1%:
Set TestFile=%OP%\MaotaoTest.MT
Cd.>%TestFile%
If Not Exist %TestFile% Set NoOP=Yes&&Goto SetExtra
Del %TestFile% /Q>NUL 2>NUL
Goto :EOF

:添加日志
>%RP%\%LogFile% Cd.
>>%RP%\%LogFile% Echo ;此文件为 WinPE 的安装LogFile,请不要随意删除
>>%RP%\%LogFile% Echo ;否则可能会造成 WinPE 的卸载不够彻底!!!
>>%RP%\%LogFile% Echo.
>>%RP%\%LogFile% Echo WinPE镜像文件=%PEFile%
>>%RP%\%LogFile% Echo WinPE外挂位置=%OP%
>>%RP%\%LogFile% Echo WinPE安装日期=%Date% %Time%
%AddATTR% %RP%\%LogFile%
Goto :EOF
回复

使用道具 举报

3#
 楼主| 发表于 2009-2-26 23:46:41 | 只看该作者
不知道小马的和毛桃的pe结构一样不一样,一样的话可以用,不一样就不知道行不行了
回复

使用道具 举报

4#
 楼主| 发表于 2009-3-31 20:02:43 | 只看该作者
下面这个是完美者论坛——相信感觉 修改的毛桃的安装程序,说明中写的支持vista下,2008和win 7下安装pe。


@Echo Off
COLOR 2F
Set Prog=Windows PE 应急系统
Set L1=              ╭══════════════════╮
Set L2=              ║                  ║
Set L3=           ╭══┤         %Prog%      ├══╮
Set L4=           ║  ║                  ║  ║
Set L5=           ║  ╰══════════════════╯  ║
Set L6=           ║                        ║
Set L7=           ╟════════════════════════╢
Set L8=           ║         版权所有             翻版不究        ║
Set L9=           ╰────────────────────────╯
Title %Prog%

Set PEFile=MiniPE\WinPE.IS_
Set PEIni=MiniPE\WinPE.INI
Set DFile=MiniPE\DOSTOOLS.IMG
Set LogFile=PEInstall.log
Set OPFile=MiniPE\OP.WIM

Set AddATTR=ATTRIB +S +H +R
Set DelATTR=ATTRIB -S -H -R

:CheckOS
if /i not "%os%."=="Windows_NT." goto SystemErro
::判断系统版本并设置TheOS
ver|find /i " 6.1">nul &&set Winver=nt67&&  set TheOS=7
ver|find /i " 6.0">nul &&set Winver=mt67&&  set TheOS=Vista
ver|find /i " 5.0">nul &&set Winver=winnt&&  set TheOS=2000
ver|find /i " 5.1">nul &&set Winver=winnt&&  set TheOS=XP
ver|find /i " 5.2">nul &&set Winver=winnt&&  set TheOS=2003
goto Start

:SystemErro
cls
Echo.
Echo.
Echo  注意:未经测试,本软件可能不适用于非 Windows PE/2000/XP/2003/Vista 操作系统。
Echo  按回车键退出安装程序
Pause >nul
Exit

:Start
CLS
Title %Prog%——安装
Echo.
Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo            ║  请选择安装方式:               ║
Echo %L6%
Echo            ║  [1] 普通安装 (硬盘安装)             ║
Echo            ║  [2] Grub安装 (硬盘安装,含DOS工具箱)         ║
Echo            ║  [3] Grub安装 (U盘、移动硬盘安装)          ║
Echo            ║  [Q] 退出安装                ║
Echo %L6%
Echo %L7%
Echo %L7%
Echo %L8%
Echo %L9%
Echo.
Echo             您现在使用的是 Windows %TheOS% 操作系统 !
Echo.
Set Choice=
Set /P Choice=        请选择要进行的操作 (1/2/3/Q) ,然后按回车:
If "%Choice%"=="" Goto Start
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="1" Goto HD
If /I "%Choice%"=="2" set XX=GG&&Goto HD
If /I "%Choice%"=="3" Goto UD
If /I "%Choice%"=="Q" Exit
Goto Start

:HD
Set RP=
For %%I In (Z Y X W V U T S R Q P O N M L K J I H G F E D C) Do If Exist %%I:\BOOT.INI Set RP=%%I:
If "%RP%"=="" Goto HDRPErr
Set PEDIR=%RP%\MiniPE&&Set TargetP=硬盘&&Set TxtSp=
If Exist %PEDIR% Goto Err1
FIND /I "C:\MAOTAO" %RP%\BOOT.INI>NUL 2>NUL
If "%Errorlevel%"=="0" Goto Err1
FIND /I "C:\MiniPE" %RP%\BOOT.INI>NUL 2>NUL
If "%Errorlevel%"=="0" Goto Err1
If /I "%Choice%"=="1" Goto Install
If /I "%Choice%"=="2" Goto GInstall
Goto HD

:UD
CLS
Title %Prog%——U 盘安装
For /F "skip=2 tokens=*" %%I In ('MYINS\CHECKUSB.EXE') DO SET Us=%%I
If "%Us%"=="当前可移动磁盘分区:" Goto NoUD
Echo %Us%&&Echo.
If "%NoUD%"=="Yes" Echo 错误:您设定的分区 %RP% 不存在、写保护、未格式化或不是 U 盘分区,请按任意键重新设定。&&Echo.
Set /P RP=请选择您的 U 盘盘符(不需要冒号,例如 F):
Echo.&&Echo.
If "%RP%"=="" Goto UD
If Not "%RP%"=="" Set RP=%RP:~0,1%:
For /F %%I In ('MYINS\CHECKUSB.EXE %RP%') DO SET Err2=%%I
If Not "%Err2%"=="1" Set NoUD=Yes&&Goto UD
Set TestFile=%RP%\MiniPETest_%RANDOM%.MT
Cd.>%TestFile%
If Not Exist %TestFile% Set NoUD=Yes&&Goto UD
Del %TestFile% /Q>NUL 2>NUL
Set U=U&&Set PEDIR=%RP%\MiniPE&&Set TargetP= U 盘&&Set TxtSp=
If Exist %RP%\MAOTAO Goto Err1
If Exist %PEDIR% Goto Err1
CLS
Echo 您选择的 U 盘分区为 %RP%,下面将对您的 U 盘进行格式化并写入引导
Echo.
Echo 请严格按照相关工具软件界面中的提示操作,以防出错。请按任意键开始。。。
PAUSE>NUL
Start /Wait MYINS\HPUSBFW.EXE
Start /Wait MYINS\GRUBGUI.EXE
Echo.
Echo 您的 U 盘已经成功格式化并写入了 Grub 引导,请按任意键继续。。。
PAUSE>NUL
Goto GInstall

:NoUD
CLS
Title %Prog%——U 盘安装
Echo.
Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo            ║ 您的计算机似乎没有安装 U 盘,您想怎么办?   ║
Echo %L6%
Echo            ║  [B] 返回首页,重新选择安装选项。      ║
Echo            ║  [Q] 退出安装                ║
Echo %L6%
Echo %L7%
Echo %L8%
Echo %L9%
Echo.
Set Choice=
Set /P Choice=           请选择要进行的操作 (B/Q) ,然后按回车:
If "%Choice%"=="" Goto NoUD
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="B" Goto Start
If /I "%Choice%"=="Q" Exit
Goto NoUD
Exit

:Err1
CLS
Title %Prog%——卸载
Echo.
Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo            ║ 您的%TargetP%中好像已经安装了 WinPE,您想怎么办?%TxtSp% ║
Echo %L6%
Echo            ║  [1] 卸载原有的 WinPE,并且重新安装。    ║
Echo            ║  [2] 卸载原有的 WinPE,并且不再安装。    ║
Echo            ║  [B] 返回首页,重新选择安装选项。      ║
Echo            ║  [Q] 退出安装                ║
Echo %L6%
Echo %L7%
Echo %L8%
Echo %L9%
Echo.
Set Choice=
Set /P Choice=           请选择要进行的操作 (1/2/B/Q) ,然后按回车:
If "%TargetP%"=="硬盘" Set U=
If "%Choice%"=="" Goto Err1
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="1" Set Choi=1&&Goto UnInstall
If /I "%Choice%"=="2" Goto UnInstall
If /I "%Choice%"=="B" Goto Start
If /I "%Choice%"=="Q" Exit
Goto Err1
Exit

:UnInstall
If Exist %RP%\LDRXPE %DelATTR% %RP%\LDRXPE&&Del %RP%\LDRXPE /Q>NUL 2>NUL
If Exist %RP%\WINNT.XPE %DelATTR% %RP%\WINNT.XPE&&Del %RP%\WINNT.XPE /Q>NUL 2>NUL
If Exist %RP%\MTLDR.PE %DelATTR% %RP%\MTLDR.PE&&Del %RP%\MTLDR.PE /Q>NUL 2>NUL
If Exist %RP%\MTLDR %DelATTR% %RP%\MTLDR&&Del %RP%\MTLDR /Q>NUL 2>NUL
If Exist %RP%\%LogFile% For /F "eol=; tokens=2 delims=^=" %%i In ('find /I ^"WinPE外挂位置^" %RP%\%LogFile%') do SET OPD=%%i
If Not "%U%"=="" Set OPD=%RP%
If Exist %OPD%\外置程序 RD %OPD%\外置程序 /S /Q>NUL 2>NUL
If Exist %RP%\%LogFile% %DelATTR% %RP%\%LogFile%&&Del %RP%\%LogFile% /Q>NUL 2>NUL
If Exist %RP%\MAOTAO RD %RP%\MAOTAO /S /Q>NUL 2>NUL
If Exist %RP%\MiniPE RD %RP%\MiniPE /S /Q>NUL 2>NUL
%DelATTR% %RP%\BOOT.INI>NUL 2>NUL
Set TMPINIFile=BOOT_%RANDOM%.INI
If Exist %RP%\BOOT.BAK (
%DelATTR% %RP%\BOOT.BAK
TYPE %RP%\BOOT.BAK|FIND /I /V "C:\MAOTAO">%RP%\%TMPINIFile%
TYPE %RP%\%TMPINIFile%|FIND /I /V "C:\MiniPE">%RP%\BOOT.INI
) Else (
If Exist %RP%\BOOT.INI TYPE %RP%\BOOT.INI|FIND /I /V "C:\MAOTAO">%RP%\%TMPINIFile%
If Exist %RP%\%TMPINIFile% TYPE %RP%\%TMPINIFile%|FIND /I /V "C:\MiniPE">%RP%\BOOT.INI
)
If Exist %RP%\BOOT.BAK %DelATTR% %RP%\BOOT.BAK&&Del %RP%\BOOT.BAK>NUL 2>NUL
If Exist %RP%\%TMPINIFile% %DelATTR% %RP%\%TMPINIFile%&&Del %RP%\%TMPINIFile%>NUL 2>NUL
If Exist %RP%\BOOT.INI %AddATTR% %RP%\BOOT.INI
if /i "%Winver%"=="nt67" %DelATTR% %RP%\BOOT.INI&&Del %RP%\BOOT.INI>NUL 2>NUL
if /i "%Winver%"=="nt67" %DelATTR% %RP%\ntldr&&Del %RP%\ntldr>NUL 2>NUL
Set RP=
Title %Prog%——卸载完成
If "%Choi%"=="1" (Echo.&&Echo.&&Echo    卸载完成,请按任意键准备安装 。。。&&PAUSE>NUL 2>NUL&&Goto Start)
Echo.&&Echo.&&Echo    卸载完成,请按任意键退出 。。。
PAUSE>NUL 2>NUL
Exit

:Install
Title %Prog%——普通安装
If Not Exist %PEDIR% MD %PEDIR%>NUL 2>NUL
If Exist %RP%\LDRXPE %DelATTR% %RP%\LDRXPE
If Exist %RP%\WINNT.XPE %DelATTR% %RP%\WINNT.XPE
Echo.&&Echo    正在复制文件,请稍候 。。。
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% MAOTAO.BIN -r -y>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% PE -r -y>NUL 2>NUL
Call :CopyAndSetFiles
Goto SUCCESS

:GInstall
If "%U%"=="" Title %Prog%——Grub安装
CLS
Set LDRP=MiniPE\
Echo 请输入您要设定的密码
Echo 注意:密码中不许有空格、"\"、引号等特殊字符
Echo.
Set /P Pass1=请输入:
Echo.&&Echo.
Echo 请再一次输入您的密码
Echo.
Set /P Pass2=请再次输入:
If Not "%Pass2%"=="%Pass1%" Echo.&&Echo 您两次输入的密码不一致,请重新输入&&Echo 请按任意键重新开始设置密码&&PAUSE>NUL 2>NUL&&Goto GInstall
If Not Exist %PEDIR% MD %PEDIR%>NUL 2>NUL
>%PEDIR%\MD5P.TMP <nul Set/p=%Pass2%
MYINS\MD5.EXE %PEDIR%\MD5P.TMP %PEDIR%\MD5R.TXT>NUL 2>NUL
For /f %%i In ('type %PEDIR%\md5r.txt') do SET MD5Pass=password --md5 %%i
If Exist %RP%\MTLDR %DelATTR% %RP%\MTLDR&&Del %RP%\MTLDR
MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% MTLDR -r -y>NUL 2>NUL
>>%RP%\MTLDR Echo %MD5Pass%
>>%RP%\MTLDR Echo find --set-root /minipe/muifont.gz
>>%RP%\MTLDR Echo fontfile /minipe/muifont.gz
>>%RP%\MTLDR Echo splashimage /minipe/bj2008.xpm.gz
>>%RP%\MTLDR Echo.
>>%RP%\MTLDR Echo title 启动 Windows PE 应急系统
>>%RP%\MTLDR Echo %MD5Pass%
>>%RP%\MTLDR Echo chainloader /minipe/ldrxpe
>>%RP%\MTLDR Echo.
>>%RP%\MTLDR Echo title Grub 命令行
>>%RP%\MTLDR Echo %MD5Pass%
>>%RP%\MTLDR Echo commandline
>>%RP%\MTLDR Echo.
>>%RP%\MTLDR Echo title 启动 Dos 工具箱
>>%RP%\MTLDR Echo %MD5Pass%
>>%RP%\MTLDR Echo find --set-root /minipe/muifont.gz
>>%RP%\MTLDR Echo clear
>>%RP%\MTLDR Echo map --mem /minipe/DOSTOOLS.IMG (fd0)
>>%RP%\MTLDR Echo map --hook
>>%RP%\MTLDR Echo chainloader (fd0)+1
>>%RP%\MTLDR Echo rootnoverify (fd0)
>>%RP%\MTLDR Echo boot
>>%RP%\MTLDR Echo.
>>%RP%\MTLDR Echo title 从第一硬盘第一分区启动
>>%RP%\MTLDR Echo root ^(hd0,0^)
>>%RP%\MTLDR Echo chainloader +1
>>%RP%\MTLDR Echo.
>>%RP%\MTLDR Echo title 从第二硬盘第一分区启动
>>%RP%\MTLDR Echo root ^(hd1,0^)
>>%RP%\MTLDR Echo chainloader ^(hd1,0^)+1
>>%RP%\MTLDR Echo.
>>%RP%\MTLDR Echo title 重新启动计算机
>>%RP%\MTLDR Echo reboot
>>%RP%\MTLDR Echo.
>>%RP%\MTLDR Echo title 关闭计算机
>>%RP%\MTLDR <nul Set/p=halt
Del %PEDIR%\MD5?.* /Q>NUL 2>NUL
Echo.
Echo 密码设置完成,请牢记您的密码,并按任意键继续 。。。
PAUSE>NUL 2>NUL
If Exist %RP%\LDRXPE %DelATTR% %RP%\LDRXPE
If Exist %RP%\WINNT.XPE %DelATTR% %RP%\WINNT.XPE
If Exist %RP%\MTLDR %DelATTR% %RP%\MTLDR
Echo.
Echo 正在复制文件,请稍候 。。。
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% BJ2008.XPM.GZ -r -y>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% muifont.gz -r -y>NUL 2>NUL
If "%U%"=="" MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR%\ maotaog.bin -r -y>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% PE -r -y>NUL 2>NUL
If "%U%"=="" Ren %PEDIR%\maotaog.bin maotao.bin
Copy ..\%DFile% %PEDIR% /Y>NUL 2>NUL
Call :CopyAndSetFiles
Goto SUCCESS

:HDRPErr
CLS
Set RP=
For %%I In (Z Y X W V U T S R Q P O N M L K J I H G F E D C) Do If Exist %%I:\BootMGR Set RP=%%I:&&Set PEDIR=%%I:\MiniPE
If Not "%RP%"=="" (
TITLE %Prog%——检测到 Win 6/7 分区
Set OPT=Vista&&Set OPT0=存在 Win 6/7 分区&&Set OPT1=[I] 将 WimPE 安装到 Win 6/7 分区。
) Else (
TITLE %Prog%——没有检测到系统分区
Set OPT=NewHD&&Set OPT0=没有安装过操作系统&&Set OPT1=[I] 全新硬盘,将 WimPE 安装到活动分区。
)
Echo.
Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo            ║ 好像您的机器中%OPT0%,您想怎么办?║
Echo %L6%
Echo            ║  %OPT1%  ║
Echo            ║  [B] 返回首页,重新选择安装选项。      ║
Echo            ║  [Q] 退出安装                ║
Echo %L6%
Echo            ║ 注意: 为确保安全,此安装选项可能会卸载不干净!║
Echo %L7%
Echo %L8%
Echo %L9%
Echo.
Set Choice=
Set /P Choice=           请选择要进行的操作 (I/B/Q) ,然后按回车:
If "%Choice%"=="" Goto HDRPErr
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="I" If "%OPT%"=="Vista" Goto Vista
If /I "%Choice%"=="I" If "%OPT%"=="NewHD" Goto NewHD
If /I "%Choice%"=="B" Goto Start
If /I "%Choice%"=="Q" Exit
Goto HDRPErr
Exit

:Vista
set timeout=5
Set PEDIR=%RP%\MINIPE
set gname=Windows PE
set gname2=MINIPE\MAOTAO.BIN
If "%XX%"=="GG" Goto GInstall
If Exist %RP%\MAOTAO Goto Err1
If Exist %PEDIR% Goto Err1
If Not Exist %PEDIR% MD %PEDIR%>NUL 2>NUL
If Exist %RP%\LDRXPE %DelATTR% %RP%\LDRXPE
If Exist %RP%\WINNT.XPE %DelATTR% %RP%\WINNT.XPE
Echo.&&Echo    正在复制文件,请稍候 。。。
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% MAOTAO.BIN -r -y>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% PE -r -y>NUL 2>NUL
Call :CopyAndSetFiles
Goto SUCCESS

:NewHD
CLS
TITLE %Prog%——在全新硬盘中安装
If "%NoNewErr%"=="Yes" Echo 错误:您设定的分区 %RP% 不存在、写保护、或未格式化,请按任意键重新设定。&&Echo.
Echo 请设置您需要安装 WinPE 到哪个分区(注意一定要是活动分区)
Echo.
Set /P RP=请输入您需要安装 WinPE 的分区符(不需要冒号,例如 C),然后按回车:
Echo.&&Echo.
If "%RP%"=="" Goto NewHD
If Not "%RP%"=="" Set RP=%RP:~0,1%:
For /F %%I In ('MYINS\CHECKUSB.EXE %RP%') DO SET Err2=%%I
If Not Exist %RP% Set NoNewErr=Yes&&Goto NewHD
Set TestFile=%RP%\MiniPETest_%RANDOM%.MT
Cd.>%TestFile%
If Not Exist %TestFile% Set NoNewErr=Yes&&Goto NewHD
Del %TestFile% /Q>NUL 2>NUL
Set PEDIR=%RP%\MiniPE
If Exist %RP%\MAOTAO Goto Err1
If Exist %PEDIR% Goto Err1
MyIns\NTBoot.exe %RP% >NUL
Echo.
Echo 正在复制文件,请稍候 。。。
If Exist %RP%\NTLDR %DelATTR% %RP%\NTLDR&&Ren %RP%\NTLDR NTLDR.BAK
Set NoLDR=Yes
If "%NoLDR%"=="Yes" MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% LDRXPE -r -y>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% PE -r -y>NUL 2>NUL
If "%NoLDR%"=="Yes" Ren %RP%\LDRXPE NTLDR
Call :CopyAndSetFiles
Goto SUCCESS

:CopyAndSetFiles
If Not Exist %RP%\NTLDR MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% NTLDR -r -y>NUL 2>NUL
If "%NoLDR%"=="" MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP%\%LDRP% LDRXPE -r -y>NUL 2>NUL
MyIns\MyIns.exe e MyIns\MyIns.dll -o%PEDIR% NTCOM -r -y>NUL 2>NUL
::If Not Exist %RP%\NTLDR MyIns\MyIns.exe e MyIns\MyIns.dll -o%RP% NTLDR -r -y>NUL 2>NUL
Copy ..\%PEFile% %PEDIR% /Y>NUL 2>NUL
Copy ..\%OPFile% %PEDIR% /Y>NUL 2>NUL
Copy ..\%PEIni% %PEDIR% /Y>NUL 2>NUL
Copy ..\%OPFile% %PEDIR% /Y>NUL 2>NUL
If "%U%"=="" If Exist %RP%\BOOT.INI %DelATTR% %RP%\BOOT.INI
If "%U%"=="" If Exist %RP%\BOOT.INI If Exist %RP%\BOOT.BAK %DelATTR% %RP%\BOOT.BAK
If "%U%"=="" If Exist %RP%\BOOT.INI Copy %RP%\BOOT.INI %RP%\BOOT.BAK>NUL 2>NUL
If "%U%"=="" If Exist %RP%\BOOT.INI TYPE %RP%\BOOT.BAK|FIND /I /V "C:\MiniPE">%RP%\BOOT.INI
If "%U%"=="" If Exist %RP%\BOOT.INI Echo C:\MiniPE\MAOTAO.BIN="Windows PE 应急系统">>%RP%\BOOT.INI
if /i "%Winver%"=="nt67" If NOT Exist %RP%\BOOT.INI CALL :BOOT
If Exist %RP%\%PEIni% %DelATTR% %RP%\%PEIni%
TYPE ..\%PEIni%|FIND /I /V "PESetup.EXE">%RP%\%PEIni%
%AddATTR% %RP%\MiniPE /S /D
%AddATTR% %RP%\MiniPE\*.* /S /D
If Exist %RP%\BOOT.INI %AddATTR% %RP%\BOOT.INI
If Exist %RP%\%LDRP%LDRXPE %AddATTR% %RP%\%LDRP%LDRXPE
If Exist %RP%\MTLDR.PE %AddATTR% %RP%\MTLDR.PE
If Exist %RP%\MTLDR %AddATTR% %RP%\MTLDR
Goto :EOF

:BOOT
ECHO [boot loader]>>%RP%\BOOT.INI
ECHO "timeout=5">>%RP%\BOOT.INI
ECHO [operating systems]>>%RP%\BOOT.INI
ECHO %RP%\%gname2%="%gname%">>%RP%\BOOT.INI
goto :EOF

:SUCCESS
Title %Prog%——安装完成
CLS
For %%i In (C D E F G H I J K L M N O P Q R S T U V W X Y Z) Do If /I "%RP%"=="%%i:" Set RP=%%i:
Echo 已经成功将镜像 %Prog% 安装到您的 %RP% 盘。
If "%U%"=="" (
Echo.
If Exist %RP%\Boot.INI Echo 系统分区中的 BOOT.INI 备份为 BOOT.BAK。
)
Echo.&&Echo.
Echo 如果您需要将 %Prog% 卸载,请重新运行本安装程序。
Echo.
Echo 请按任意键退出 。。。
PAUSE>NUL 2>NUL
Exit


[ 本帖最后由 freesoft00 于 2009-4-3 17:37 编辑 ]
回复

使用道具 举报

5#
 楼主| 发表于 2009-3-31 20:05:31 | 只看该作者
这个是上面完整的包

PESETUP.part1.rar

280.92 KB, 下载次数: 210, 下载积分: 无忧币 -2

PESETUP.part2.rar

280.92 KB, 下载次数: 229, 下载积分: 无忧币 -2

PESETUP.part3.rar

280.92 KB, 下载次数: 192, 下载积分: 无忧币 -2

PESETUP.part4.rar

165.06 KB, 下载次数: 181, 下载积分: 无忧币 -2

回复

使用道具 举报

6#
发表于 2009-3-31 20:09:56 | 只看该作者
太好了,谢谢,我正在找呢
回复

使用道具 举报

7#
发表于 2009-4-1 09:58:06 | 只看该作者
这个问题已经头痛了很久,想自己改又怕麻烦,现在又参考就好多了。
回复

使用道具 举报

8#
发表于 2009-4-1 10:26:13 | 只看该作者
支持下.慢慢看............
回复

使用道具 举报

9#
 楼主| 发表于 2009-4-2 13:08:46 | 只看该作者
顶起来,看谁能完善完善。
回复

使用道具 举报

10#
 楼主| 发表于 2009-4-3 17:39:17 | 只看该作者
其他的支持在vista下安装的pe的安装程序是不是加上这个win7的检查就可以安装了。是否安装vista下和安装到win7是一样的目录结果等
::判断系统版本并设置TheOS
ver|find /i " 6.1">nul &&set Winver=nt67&&  set TheOS=7
回复

使用道具 举报

11#
 楼主| 发表于 2009-4-3 21:12:35 | 只看该作者
hhh333 的pe 0325 在vista下安装,安装到vista那一步回车后一闪而过,没有安装成功,安了两次都是。
回复

使用道具 举报

12#
发表于 2009-4-4 00:20:10 | 只看该作者
楼主辛苦了,正要想找这样的东西,谢谢分享!
回复

使用道具 举报

13#
发表于 2009-4-4 09:43:10 | 只看该作者
楼主辛苦了,谢谢分享!给你顶一下。
回复

使用道具 举报

14#
 楼主| 发表于 2009-4-5 09:49:24 | 只看该作者
pe安装程序目录中的MYINS.EXE和MYINS.DLL是什么文件,是7z解压缩文件吗,用到这两个文件的命令是没哟看懂是什么意思。
另外,hhh333用用户在vista下安装成功吗
回复

使用道具 举报

15#
发表于 2009-4-5 10:46:41 | 只看该作者
支持下.望出成果.....
回复

使用道具 举报

16#
 楼主| 发表于 2009-4-5 11:03:19 | 只看该作者
66369 那个2003的pe安装程序中的
Set PEFile=MiniPE\WinPE.IS_
Set PEIni=MiniPE\WinPE.INI
Set DFile=MiniPE\DOSTOOLS.IMG
Set LogFile=PEInstall.log
Set OPFile=MiniPE\OP.WIM
Set AddATTR=ATTRIB +S +H +R
Set DelATTR=ATTRIB -S -H -R

改成你的WinPE03.IS_  OP03.WIM  大概就可以了。下面的批处理文件用不用改没有看。
回复

使用道具 举报

17#
 楼主| 发表于 2009-4-11 11:37:12 | 只看该作者
毛桃那个安装程序不做修改 ,66369的那个2003的pe安装不成功,晚上没事修改了一下。可以安装了。
SETUP.rar
我只测试了普通安装,其它的也应该没有问题。

这个只能试用于66369的2003的pe,如果要通用还得修改一下。这个谁愿意整自己整吧

[ 本帖最后由 freesoft00 于 2009-4-11 16:21 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-6-25 00:17

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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