|
2#
楼主 |
发表于 2010-1-1 22:38:01
|
只看该作者
@Echo Off
PUSHD %~dp0
COLOR 2F
Set Prog= 兵临城下专用PE安装卸载工具
Set L1= ╭══════════════════╮
Set L2= ║ ║
Set L3= ╭══┤ %Prog% ├══╮
Set L4= ║ ║ ║ ║
Set L5= ║ ╰══════════════════╯ ║
Set L6= ║ ║
Set L7= ╟════════════════════════╢
Set L8= ║ 版权没有 翻版不究 ║
Set L9= ╰────────────────────────╯
Title %Prog%
Set AddATTR=ATTRIB +S +H
Set DelATTR=ATTRIB -S -H -R
Set LogFile=PEInstall.log
:CheckOS
if /i not "%os%."=="Windows_NT." goto SystemErro
::判断系统版本并设置TheOS
ver|find /i " 6.1">nul &&set Winver=WIN7&& set TheOS=WIN7
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/WIN7 操作系统。
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 ║ ║
Echo ║ [2] 卸载 ║
Echo ║ ║
Echo ║ [Q] 退出 ║
Echo %L6%
Echo %L7%
Echo %L7%
Echo %L8%
Echo %L9%
Echo.
Echo.
::Set Choice=
Set /P Choice= 请选择要进行的操作 (1/2/Q) ,然后按回车:
If "%Choice%"=="" Goto Start
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="1" Goto INSTALL
If /I "%Choice%"=="2" Goto UNINSTALL
If /I "%Choice%"=="Q" Exit
Goto Start
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:INSTALL
cls
Echo.
Echo.
Set /P Choice= 请选择要安装的目标盘(如C,按-键回主选单),然后按回车:
If "%Choice%"=="" Goto INSTALL
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="-" Goto Start
Set RP=%Choice%:
IF NOT EXIST %RP% (
echo.
echo %RP%盘不存在,请重新选择!
echo.
echo.
pause
Goto INSTALL
)
Set PEDIR=%RP%\MINIPE
For /F %%I In ('MYINS\CHECKUSB.EXE %RP%') DO SET ISUD=%%I
Echo.
IF "%ISUD%"=="1" ECHO 检测结果:%RP%为USB磁盘。
IF "%ISUD%"=="0" ECHO 检测结果:%RP%不是USB磁盘
Set TestFile=%RP%\MINIPETest_%RANDOM%.MT
Cd.>%TestFile%
If Not Exist %TestFile% Set UNWRITE=1
If Exist %TestFile% Del %TestFile% /Q>NUL 2>NUL
IF "%UNWRITE%"=="1" IF not "%ISUD%"=="1" Goto ErrHd
Echo.
IF #%UNWRITE%==#1 (
Echo 测试结果:目标盘不可写!
) ELSE Echo 测试结果:目标盘可写!
IF "%ISUD%"=="1" (
CALL :FORMAT_U
)
Goto INST_PE
:ErrHd
cls
echo.
echo 目标硬盘写保护或未格式化!按任意键退出.....
pause>nul
exit
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:FORMAT_U
CLS
Echo.
Echo.
Echo 您选择的%RP%盘为 U 盘分区,下面将对您的 U 盘进行格式化并写入引导
Echo.
Echo 请格式化主引导记录MBR 为Grub For DOS
Echo.
Echo.
pause
start /wait MYINS\BOOTICE.EXE
GOTO :EOF
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:INST_PE
CLS
Title %Prog%——安装
Echo.
Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo ║ 请选择: ║
Echo %L6%
Echo ║ [1] 安装 Windows XPE ║
Echo ║ ║
Echo ║ [2] 安装 Windows7 PE3 ║
Echo ║ ║
Echo ║ [3] 安装 RAMXP ║
Echo ║ ║
Echo ║ [Q] 退出 ║
Echo %L6%
Echo %L7%
Echo %L8%
Echo %L9%
Echo 您现在使用的是 Windows %TheOS% 操作系统 !
if "%TheOS%"=="XP" Echo ( 或 Windows XP 核心的 WinPE )
if "%TheOS%"=="2003" Echo ( 或 Windows 2003 核心的 WinPE )
if "%TheOS%"=="Vista" Echo ( 请确保您拥有管理员权限以及关闭了UAC,否则安装可能失败 )
if "%TheOS%"=="WIN7" Echo ( 请确保您拥有管理员权限以及关闭了UAC,否则安装可能失败 )
Echo.
::Set Choice=
Set /P Choice= 请选择要进行的操作 (1/2/3/Q) ,然后按回车:
If "%Choice%"=="" Goto INST_PE
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="1" Goto XPE
If /I "%Choice%"=="2" Goto PE3
If /I "%Choice%"=="3" Goto RAMXP
If /I "%Choice%"=="Q" Exit
Goto INST_PE
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:XPE
Set XPEDIR=%RP%\MINIPE\WINPE.IS_
If Exist %XPEDIR% Goto Err1
If Not Exist %PEDIR% MD %PEDIR%>NUL 2>NUL
CLS
Echo.
SET Choice=
SET /P Choice= 外置程序包默认放到您选定的 %RP%盘,要放到其他盘吗?(Y/N):
ECHO.
Echo.
Echo 正在复制文件,请稍候 ............
IF NOT #%Choice%==# SET Choice=%Choice:~0,1%
IF /I '%Choice%'=='y' CALL :SetExtra
IF /I NOT '%Choice%'=='y' SET OP=%RP%
If Not Exist %PEDIR% MD %PEDIR%>NUL 2>NUL
if /i Exist %RP%\ProgramData (
CALL :Vista_Install
) Else (
CALL :Pubilc_Install
)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:Vista_Install
set WINPE_GUID={589f9ce2-f634-11de-97a2-001d0f0e0ef6}
bcdedit /timeout 3 >NUL 2>NUL
bcdedit /create %WINPE_GUID% /d "Windows XPE" /application BOOTSECTOR >NUL 2>NUL
bcdedit /set %WINPE_GUID% device partition=%RP% >NUL 2>NUL
bcdedit /set %WINPE_GUID% path \PELDR >NUL 2>NUL
bcdedit /displayorder %WINPE_GUID% /addlast >NUL 2>NUL
copy MYINS\SETUPLDR.BIN %RP%\PELDR >NUL 2>NUL
If Not Exist %RP%\NTDETECT.COM copy MYINS\NTDETECT.COM %RP%\NTDETECT.COM >NUL 2>NUL
copy MYINS\WINNT.XPE %RP%\WINNT.XPE /y>NUL 2>NUL
Copy ..\MINIPE\WINPE.IS_ %RP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\WINPE.INI %OP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\SOFT.INI %OP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\Driver.WIM %OP%\MINIPE\ /Y>NUL 2>NUL
IF NOT Exist %OP%\MINIPE\SOFT.WIM Copy ..\MINIPE\SOFT.WIM %OP%\MINIPE\ /Y>NUL 2>NUL
%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
%AddATTR% %RP%\NTDETECT.COM
CALL :LOG
CALL :SUCCESS
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:Pubilc_Install
IF "%ISUD%"=="1" (
CALL :UD
) ELSE (
CALL :CopyFile
)
CALL :LOG
CALL :SUCCESS
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:CopyFile
copy MYINS\SETUPLDR.BIN %RP%\PELDR >NUL 2>NUL
copy MYINS\AVLDR %RP%\MINIPE\AVLDR >nul 2>nul
copy MYINS\WINNT.XPE %RP%\WINNT.XPE /y>NUL 2>NUL
If Not Exist %RP%\NTDETECT.COM copy MYINS\NTDETECT.COM %RP%\NTDETECT.COM >NUL 2>NUL
If Not Exist %RP%\NTLDR copy MYINS\NTLDR %RP%\NTLDR >NUL 2>NUL
Copy ..\MINIPE\WINPE.IS_ %RP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\WINPE.INI %OP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\SOFT.INI %OP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\Driver.WIM %OP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\SOFT.WIM %OP%\MINIPE\ /Y>NUL 2>NUL
If Exist %RP%\BOOT.INI %DelATTR% %RP%\BOOT.INI
If Exist %RP%\BOOT.INI If Exist %RP%\BOOT.BAK %DelATTR% %RP%\BOOT.BAK
If Exist %RP%\BOOT.INI Copy %RP%\BOOT.INI %RP%\BOOT.BAK>NUL 2>NUL
If Exist %RP%\BOOT.INI TYPE %RP%\BOOT.BAK|FIND /I /V "%RP%\MINIPE">%RP%\BOOT.INI
If Exist %RP%\BOOT.INI Echo %RP%\MINIPE\AVLDR=Windows XPE>>%RP%\BOOT.INI
If /I "%TheOS%"=="2000" (
%DelATTR% %RP%\NTLDR&&%DelATTR% %RP%\bootfont.bin
del /f /q %RP%\NTLDR
del /f /q %RP%\bootfont.bin
copy ..\BOOT\FONT.BIN %RP%\bootfont.bin /y>nul
copy MYINS\ntldr1 %RP%\ntldr /y>nul
)
%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%\BOOT.BAK /S /D
%AddATTR% %RP%\WINNT.XPE
If Exist %RP%\BOOT.INI %AddATTR% %RP%\BOOT.INI
Goto :EOF
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:UD
If Not Exist %RP%\BOOT MD %RP%\BOOT>NUL 2>NUL
Copy ..\BOOT\NTDETECT %RP%\BOOT\NTDETECT /y>NUL 2>NUL
Copy MYINS\grldr %RP%\GRLDR /y>NUL 2>NUL
Copy MYINS\menu.lst %RP%\menu.lst /y>NUL 2>NUL
XCOPY ..\BOOT\GRUB4DOS /E %RP%\BOOT\GRUB4DOS\ /Y /H /R>NUL 2>NUL
Copy ..\BOOT\XPPE %RP%\BOOT\XPPE /y>NUL 2>NUL
Copy ..\MINIPE\WINPE.IS_ %RP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\WINPE.INI %OP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\SOFT.INI %OP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\Driver.WIM %OP%\MINIPE\ /Y>NUL 2>NUL
Copy ..\MINIPE\SOFT.WIM %OP%\MINIPE\ /Y>NUL 2>NUL
Goto :EOF
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
: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
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:SUCCESS
Title %Prog%——安装完成
CLS
Echo.
Echo.
Echo 已经成功将镜像安装到 %RP% 盘
Echo.
Echo 已经成功将外置程序安装到 %OP% 盘
Echo.
If Exist %RP%\Boot.INI Echo 系统分区中的BOOT.INI备份为BOOT.BAK
Echo.
Echo 如果您需要将 WinPE 卸载,请重新运行本安装程序。
Echo.
Echo.
Echo 请按任意键退出......
PAUSE>NUL 2>NUL
Exit
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:LOG
>%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
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:Err1
CLS
Title %Prog%——卸载
Echo.
Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo ║ 您好像已经安装了镜像中的系统,您想怎么办? ║
Echo %L6%
Echo ║ [1] 卸载原有的 WinPE,并且重新安装。 ║
Echo ║ [2] 卸载原有的 WinPE,并且不再安装。 ║
Echo ║ 返回首页,重新选择安装选项。 ║
Echo ║ [Q] 退出安装 ║
Echo %L6%
Echo %L7%
Echo %L8%
Echo %L9%
Echo.
Set Choice=
Set /P Choice= 请选择要进行的操作 (1/2/B/Q) ,然后按回车:
If "%Choice%"=="" Goto Err1
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="1" Set UN=1&&Set Choi=1&&Goto UnInstall
If /I "%Choice%"=="2" Set UN=1&&Goto UnInstall
If /I "%Choice%"=="B" Goto Start
If /I "%Choice%"=="Q" Exit
Goto Err1
Exit
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:UnInstall
cls
If /I "%UN%"=="1" (
Goto Un
)
Echo.
Echo.
Echo.
Set /P Choice= 请选择要进行卸载的目标盘(如C,按-键回主菜单),然后按回车:
If "%Choice%"=="" Goto KillFile
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="-" Goto Start
Set RP=%Choice%:
IF NOT EXIST %RP% (
echo.
echo 选定的盘%RP%不存在,请重新输入!
echo.
pause
Goto Err1
)
:Un
If Exist %RP%\%LogFile% For /F "eol=; tokens=2 delims=^=" %%i In ('find /I ^"WinPE外挂位置^" %RP%\%LogFile%') do SET OPD=%%i
If "%OPD%"=="" Set OPD=%RP%
If Exist %RP%\WINNT.XPE %DelATTR% %RP%\WINNT.XPE&&Del %RP%\WINNT.XPE /Q>NUL 2>NUL
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
If Exist %RP%\BOOT RD %RP%\BOOT /S /Q>NUL 2>NUL
If Exist %RP%\GRLDR %DelATTR% %RP%\GRLDR&&Del %RP%\GRLDR /Q>NUL 2>NUL
If Exist %RP%\menu.lst %DelATTR% %RP%\menu.lst&&Del %RP%\menu.lst /Q>NUL 2>NUL
If Exist %RP%\W7LDR %DelATTR% %RP%\W7LDR&&Del %RP%\W7LDR /Q>NUL 2>NUL
If Exist %RP%\ramxp %DelATTR% %RP%\ramxp&&Del %RP%\ramxp /Q>NUL 2>NUL
If Exist %RP%\grldr.mbr %DelATTR% %RP%\grldr.mbr&&Del %RP%\grldr.mbr /Q>NUL 2>NUL
If Exist %RP%\ramos.gz %DelATTR% %RP%\ramos.gz&&Del %RP%\ramos.gz /Q>NUL 2>NUL
if /i NOT "%TheOS%"=="Vista" if /i NOT "%TheOS%"=="WIN7" Del %RP%\BOOTMGR /Q>NUL 2>NUL
If Exist %RP%\NTDETECT.COM if /i Exist %RP%\ProgramData %DelATTR% %RP%\NTDETECT.COM&&Del %RP%\NTDETECT.COM /Q>NUL 2>NUL
FIND /I "%RP%\MINIPE" %RP%\BOOT.INI>NUL 2>NUL
If "%Errorlevel%"=="0" %DelATTR% %RP%\BOOT.INI&&Del %RP%\BOOT.INI
%DelATTR% %RP%\BOOT.INI>NUL 2>NUL
If Exist %RP%\BOOT.BAK (
%DelATTR% %RP%\BOOT.BAK
TYPE %RP%\BOOT.BAK|FIND /I /V "%LDRFLAG%">%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 "%LDRFLAG%">%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
if /i Exist %RP%\ProgramData bcdedit /delete {2a16f1f0-f610-11de-b8bd-001d0f0e0ef6}>NUL 2>NUL
if /i Exist %RP%\ProgramData bcdedit /delete {3e3895fa-74d4-11de-a03b-00242cc11ea1}>NUL 2>NUL
if /i Exist %RP%\ProgramData bcdedit /delete {589f9ce2-f634-11de-97a2-001d0f0e0ef6}>NUL 2>NUL
Set RP=
Title %Prog%——卸载完成
If /I "%Choi%"=="1" (
Echo.
Echo.
Echo 卸载完成,请按任意键准备重新安装 。。。
PAUSE>NUL 2>NUL
Goto :Start
)
Echo.
Echo.
Echo 卸载完成,请按任意键退出 。。。
PAUSE>NUL 2>NUL
Exit
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:PE3
Set PEDIR=%RP%\MINIPE
Set PE3DIR=%RP%\MINIPE\WIN7PE.WIM
If Exist %PE3DIR% Goto Err1
CLS
Echo.
SET Choice=
SET /P Choice= 外置程序包默认放到您选定的 %RP%盘,要放到其他盘吗?(Y/N):
ECHO.
IF NOT #%Choice%==# SET Choice=%Choice:~0,1%
IF /I '%Choice%'=='y' CALL :SetExtra
IF /I NOT '%Choice%'=='y' SET OP=%RP%
If Not Exist %PEDIR% MD %PEDIR%>NUL 2>NUL
If Not Exist %RP%\BOOT MD %RP%\BOOT>NUL 2>NUL
Echo.
Echo 正在复制文件,请稍候 ............
if /i Exist %RP%\ProgramData (
CALL :Vista_PE3
) Else (
CALL :Pubilc_PE3
)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:Vista_PE3
bcdedit /timeout 3 >NUL 2>NUL
set RAMDISK_OPTIONS={ed539f34-74d6-11de-b518-00242cc11ea1}
set WINPE_GUID={3e3895fa-74d4-11de-a03b-00242cc11ea1}
bcdedit /create %RAMDISK_OPTIONS% -d "Windows7 PE3.0" -device>NUL 2>NUL
bcdedit /set %RAMDISK_OPTIONS% ramdisksdidevice boot>NUL 2>NUL
bcdedit /set %RAMDISK_OPTIONS% ramdisksdipath \boot\boot.sdi>NUL 2>NUL
bcdedit /create %WINPE_GUID% -d "Windows7 PE3.0" -application OSLOADER>NUL 2>NUL
bcdedit /set %WINPE_GUID% device ramdisk=[BOOT]\MINIPE\WIN7PE.wim,%RAMDISK_OPTIONS%>NUL 2>NUL
bcdedit /set %WINPE_GUID% path \windows\system32\boot\winload.exe>NUL 2>NUL
bcdedit /set %WINPE_GUID% osdevice ramdisk=[BOOT]\MINIPE\WIN7PE.wim,%RAMDISK_OPTIONS%>NUL 2>NUL
bcdedit /set %WINPE_GUID% systemroot \windows>NUL 2>NUL
bcdedit /set %WINPE_GUID% detecthal yes>NUL 2>NUL
bcdedit /set %WINPE_GUID% winpe yes>NUL 2>NUL
bcdedit /set %WINPE_GUID% locale "zh-CN">NUL 2>NUL
bcdedit -displayorder %WINPE_GUID% /addlast>NUL 2>NUL
XCOPY ..\MINIPE\WIN7PE.WIM %RP%\MINIPE\ /Y /H /R>NUL 2>NUL
If Not Exist %OP%\MINIPE\SOFT.WIM Copy ..\MINIPE\SOFT.WIM %OP%\MINIPE\ /Y>NUL 2>NUL
If Not Exist %OP%\MINIPE\WIN7PE.INI Copy ..\MINIPE\WIN7PE.INI %OP%\MINIPE\ /Y>NUL 2>NUL
CALL :LOG
CALL :SUCCESS
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:Pubilc_PE3
If /I NOT Exist %RP%\ProgramData XCOPY ..\BOOT\ZH-CN /E %RP%\BOOT\ZH-CN\ /Y /H /R>NUL 2>NUL
If /I NOT Exist %RP%\ProgramData XCOPY ..\BOOT\FONTS /E %RP%\BOOT\FONTS\ /Y /H /R>NUL 2>NUL
If /I NOT Exist %RP%\BOOT\BCD COPY ..\BOOT\BCD %RP%\BOOT\BCD /Y>NUL 2>NUL
If /I NOT Exist %RP%\ProgramData COPY ..\BOOT\BOOT.SDI %RP%\BOOT\BOOT.SDI /Y>NUL 2>NUL
If /I NOT Exist %RP%\ProgramData COPY ..\BOOT\MEMTEST.EXE %RP%\BOOT\MEMTEST.EXE /Y>NUL 2>NUL
If /I NOT Exist %RP%\ProgramData COPY ..\BOOT\BOOTSECT.EXE %RP%\BOOT\BOOTSECT.EXE /Y>NUL 2>NUL
If /I NOT Exist %RP%\ProgramData COPY ..\BOOT\ETFSBOOT.COM %RP%\BOOT\ETFSBOOT.COM /Y>NUL 2>NUL
XCOPY ..\MINIPE\WIN7PE.WIM %RP%\MINIPE\ /Y /H /R>NUL 2>NUL
If Not Exist %OP%\MINIPE\SOFT.WIM Copy ..\MINIPE\SOFT.WIM %OP%\MINIPE\ /Y>NUL 2>NUL
If Not Exist %OP%\MINIPE\WIN7PE.INI Copy ..\MINIPE\WIN7PE.INI %OP%\MINIPE\ /Y>NUL 2>NUL
IF "%ISUD%"=="1" (
CALL :PE3_U
) Else (
CALL :XP
)
If /i NOT Exist %RP%\BOOTMGR Copy ..\BOOTMGR %RP%\BOOTMGR /Y>NUL 2>NUL
CALL :LOG
CALL :SUCCESS
Goto :EOF
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:XP
If /I NOT Exist %RP%\ProgramData Copy MYINS\W7LDR %RP%\W7LDR /y>NUL 2>NUL
If /I NOT Exist %RP%\ProgramData %DelATTR% %RP%\BOOT.INI
If /I NOT Exist %RP%\ProgramData If Exist %RP%\BOOT.BAK %DelATTR% %RP%\BOOT.BAK
If /I NOT Exist %RP%\ProgramDataI Copy %RP%\BOOT.INI %RP%\BOOT.BAK>NUL 2>NUL
If /I NOT Exist %RP%\ProgramData Echo %RP%\W7LDR=Windows7 PE3.0>>%RP%\BOOT.INI
%AddATTR% %RP%\MINIPE /S /D
%AddATTR% %RP%\MINIPE\*.* /S /D
%AddATTR% %OP%\MINIPE /S /D
%AddATTR% %OP%\MINIPE\*.* /S /D
If /I NOT Exist %RP%\ProgramData %AddATTR% %RP%\BOOT /S /D
If /I NOT Exist %RP%\ProgramData %AddATTR% %RP%\BOOT\*.* /S /D
If /I NOT Exist %RP%\ProgramData %AddATTR% %RP%\W7LDR
If Exist %RP%\BOOT.INI %AddATTR% %RP%\BOOT.INI
Goto :EOF
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:PE3_U
XCOPY ..\BOOT\GRUB4DOS /E %RP%\BOOT\GRUB4DOS\ /Y /H /R>NUL 2>NUL
Copy MYINS\grldr %RP%\GRLDR /y>NUL 2>NUL
Copy MYINS\menu.lst %RP%\menu.lst /y>NUL 2>NUL
Goto :EOF
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:RAMXP
Set RAMXPDIR=%RP%\ramos.gz
If Exist %RAMXPDIR% Goto Err1
if /i Exist %RP%\ProgramData (
CALL :Vista_RAM
) Else (
CALL :Pubilc_RAM
)
Goto :RAMXP
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:Vista_RAM
set WINPE_GUID={2a16f1f0-f610-11de-b8bd-001d0f0e0ef6}
bcdedit /timeout 3 >NUL 2>NUL
bcdedit /create %WINPE_GUID% /d "RamOS XP" /application BOOTSECTOR>NUL 2>NUL
bcdedit /set %WINPE_GUID% device partition=%RP%>NUL 2>NUL
bcdedit /set %WINPE_GUID% path \grldr.mbr>NUL 2>NUL
bcdedit /displayorder %WINPE_GUID% /addlast>NUL 2>NUL
Copy ..\ramos.gz %RP%\ramos.gz /y>NUL 2>NUL
Copy MYINS\grldr.mbr %RP%\grldr.mbr /y>NUL 2>NUL
Copy MYINS\grldr-ram %RP%\grldr /y>NUL 2>NUL
%AddATTR% %RP%\grldr.mbr
%AddATTR% %RP%\grldr
%AddATTR% %RP%\ramos.gz
CLS
Echo.
Echo 已经成功将镜像安装到 %RP% 盘
Echo.
Echo 如果您需要将 RAMXP 卸载,请重新运行本安装程序。
Echo.
Echo.
Echo 请按任意键退出......
PAUSE>NUL 2>NUL
Exit
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:Pubilc_RAM
Copy ..\ramos.gz %RP%\ramos.gz /y>NUL 2>NUL
IF "%ISUD%"=="1" (
CALL :RAM_U
) Else (
CALL :RAMHD
)
CLS
Echo.
Echo 已经成功将镜像安装到 %RP% 盘
Echo.
Echo 如果您需要将 RAMXP 卸载,请重新运行本安装程序。
Echo.
Echo.
Echo 请按任意键退出......
PAUSE>NUL 2>NUL
Exit
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:RAM_U
XCOPY ..\BOOT\GRUB4DOS /E %RP%\BOOT\GRUB4DOS\ /Y /H /R>NUL 2>NUL
Copy MYINS\grldr %RP%\GRLDR /y>NUL 2>NUL
Copy MYINS\menu.lst %RP%\menu.lst /y>NUL 2>NUL
Goto :EOF
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:RAMHD
Copy MYINS\ramxp %RP%\ramxp /y>NUL 2>NUL
If Exist %RP%\BOOT.INI %DelATTR% %RP%\BOOT.INI
If Exist %RP%\BOOT.INI If Exist %RP%\BOOT.BAK %DelATTR% %RP%\BOOT.BAK
If Exist %RP%\BOOT.INI Copy %RP%\BOOT.INI %RP%\BOOT.BAK>NUL 2>NUL
If Exist %RP%\BOOT.INI TYPE %RP%\BOOT.BAK|FIND /I /V "%RP%\MINIPE">%RP%\BOOT.INI
If Exist %RP%\BOOT.INI Echo %RP%\ramxp=RamOS XP>>%RP%\BOOT.INI
%AddATTR% %RP%\ramos.gz
%AddATTR% %RP%\ramxp
If Exist %RP%\BOOT.INI %AddATTR% %RP%\BOOT.INI
Goto :EOF
[ 本帖最后由 潮退潮生 于 2010-1-2 17:16 编辑 ] |
|