win7下一键安装删除XP脚本

已为老胡 2012-05-16 PM 1603℃ 0条

要保证硬盘不是四个主分区或三个主分区一个扩展分区
使用imageX灌入镜像,GHOST应该也行
右键管理员运行即可
关于XP的说明:安装时使用原版xp sp3安装到第三分区的,再imageX得到的镜像,安装到其他分区要修改boot.ini,imageX时最好加上boot参数,不然可能只启动不能登录系统,不过本人是安装,imagex和还原的都是第三分区没加boot参数也成功


文件1:一键安装XP.bat (复制后粘贴到记事本另存为一键安装XP.bat)



@echo off
goto :note
1.判断是win7系统,不然盘符错乱,处理麻烦,还要判断不是修复模式
2.处理磁盘,压缩win7,创建分区,格式化,添加卷标XP,分配盘符,默认P
3.灌入系统镜像,添加启动项,复制引导文件,修复引导,隐藏系统保留分区,重启
注意:中途失败会搞得乱七八糟,需手动修复,diskpart失败可以看日志diskpartLog.txt
diskpart在系统重启会自动按照分区物理位置分配分区号
可能需要根据具体情况修改
:note
rem 判断当前系统
set im=imagex_x64
set bs=bootsect_x64
if /i "%PROCESSOR_IDENTIFIER:~0,3%"=="X86" (set im=imagex_x86 & set bs=bootsect_x86)
if not exist X: ver | find /i " 6."
if not errorlevel 0 echo 当前不是WIN7系统,将退出!&pause &exit
if exist P: echo 已有XP系统,将退出!&pause &exit
rem 进入操作目录
cd /d d:system
if not errorlevel 0 echo 目录不符,严重错误!将退出!&pause &exit
rem 生成diskpart脚本
call:addXPScript >addXPScript.txt
if not errorlevel 0 echo 生成脚本失败!&pause &exit
echo 成功生成diskpart脚本!磁盘创建中……
rem 生成XP磁盘
diskpart /s addXPScript.txt >>diskpartLog.txt
if not errorlevel 0 echo 磁盘创建失败!请右键管理员再试!&pause &exit
del addXPScript.txt
echo 成功创建XP系统盘!开始灌入系统镜像……
rem 镜像灌入
%im%/apply winxp.wim 2 P:
if not errorlevel 0 echo 镜像灌入失败!&pause &exit
echo 成功灌入系统镜像!开始添加启动项并修复引导……
rem 添加启动项,复制引导文件并修复引导
call :addXPBoot
if not errorlevel 0 echo 添加启动项失败!&pause &exit
%bs% /nt52 P:
if not errorlevel 0 echo 修复引导失败!&pause &exit
rem 隐藏系统保留分区
call:delM >delM.txt
diskpart /s delM.txt >>diskpartLog.txt
if not errorlevel 0 echo 隐藏系统保留分区失败!&pause &exit
del delM.txt
echo XP安装成功!将重启!
pause
shutdown /r /t 0 /f
:addXPScript
echo list disk
echo select disk 0
echo list partition
echo select partition 2
echo shrink desired=5125
echo create partition primary
echo format label="XP" quick
echo assign letter=P
echo select partition 1
echo assign letter=M
echo exit
goto :eof
:addXPBoot
rem bcdedit /export "D:systembcdBackup"
rem 以后可以用/import "D:systembcdBackup" 还原!
Bcdedit /create {ntldr} -d "Windows XP"
Bcdedit /set {ntldr} device partition=P:
Bcdedit /set {ntldr} path ntldr
Bcdedit /displayorder {ntldr} -addlast
bcdedit /timeout 3
rem 加上bcdedit /default {ntldr} 可以让XP成为默认系统
xcopy /h /y P:ntldr M:
xcopy /h /y P:boot.ini M:
xcopy /h /y P:NTDETECT.com M:
goto :eof
:delM
echo list disk
echo select disk 0
echo list partition
echo select partition 1
echo remove
echo exit
goto :eof



文件2:一键删除XP.bat(复制后粘贴到记事本另存为一键删除XP.bat)



@echo off
goto :note
1.判断是win7系统,不然盘符错乱,处理麻烦,还要判断不是修复模式
2.通过卷标确认删除xp磁盘,扩展空间到win7
3.删除XP引导文件,隐藏系统保留分区
删除XP磁盘后WIN7会自动删除引导XP信息
:note
rem 判断当前系统
if not exist X: ver | find /i " 6."
if not errorlevel 0 echo 当前不是WIN7系统,将退出!&pause &exit
if not exist P: echo 未安装XP! &pause &exit
rem 进入操作目录
cd /d d:system
if not errorlevel 0 echo 目录不符,严重错误!将退出!&pause &exit
rem 确认删除数据
:xpDel
wmic LogicalDisk where "DeviceID='P:'" get VolumeName /value |find /i "volumename=XP"
if errorlevel 0 (echo 删除卷标为XP的磁盘P,P盘全部数据将丢失,确认请输入【1】,取消请输入【0】 ) else (echo P盘卷标不是XP,P盘全部数据将丢失,确认请输入【1】,取消请输入【0】)
set /p xpDel=请选择:
if "%xpDel%"=="0" exit
if "%xpDel%"=="1" (call :delXP ) else (echo 输入错误,请重新输入!& goto :xpDel)
:delXP
call:delXPScript > delXPScript.txt
if not errorlevel 0 echo 生成脚本失败!&pause &exit  
echo 成功生成diskpart脚本!磁盘删除中……
diskpart /s delXPScript.txt >> diskpartLog.txt
if not errorlevel 0 echo 磁盘删除失败!请右键管理员再试!&pause &exit
del delXPScript.txt
rem 删除XP引导文件
call :delXPBootFile
rem 隐藏系统保留分区
call:delM >delM.txt
diskpart /s delM.txt >>diskpartLog.txt
if not errorlevel 0 echo 隐藏系统保留分区失败!&pause &exit
del delM.txt
echo 成功删除XP系统盘!
pause
exit
:delXPScript
echo list disk
echo select disk 0
echo list partition
echo select partition 3
echo delete partition
echo select partition 2
echo extend
echo select partition 1
echo assign letter=M
echo exit
goto :eof
:delXPBootFile
del /a:h /f M:ntldr
del /a:h /f M:boot.ini
del /a:h /f M:NTDETECT.com
goto :eof
:delM
echo list disk
echo select disk 0
echo list partition
echo select partition 1
echo remove
echo exit
goto :eof


非特殊说明,本博所有文章均为博主原创。

评论啦~