|
十年前的一段制作U盘程序,我跟你学的,改变了一下,还记得吗?
@ECHO off
:start
mode con cols=45 lines=30
color 0E
cd /d %~dp0
set nhd=
set mod=
set size=
title U盘系统维护工具安装程序
ECHO.
ECHO U盘系统维护工具安装程序
ECHO.
ECHO ┏━━━━━━━━━━━━━━━━┓
ECHO ┃ ┃
ECHO ┃ !!警告!! ┃
ECHO ┃ ┃
ECHO ┃安装过程会清除所选盘号的所有数据┃
ECHO ┃ ┃
ECHO ┃请谨慎操作,以免带来不必要的损失┃
ECHO ┃ ┃
ECHO ┃ ┃
ECHO ┃ 本启动盘内含WinPE和DOS工具 ┃
ECHO ┃ ┃
ECHO ┃ ┃
ECHO ┃ ┃
ECHO ┃ = 制作: Sinoxer = ┃
ECHO ┃ = 改变: XwX = ┃
ECHO ┃ ┃
ECHO ┗━━━━━━━━━━━━━━━━┛
ECHO.
echo.
pause
cls
ECHO.
ECHO ┏━━━━━━━━━━━━━━━━┓
ECHO ┃ ┃
ECHO ┃ 检测U盘信息,请正确选择盘符号 ┃
ECHO ┃ ┃
ECHO ┃ 注意! 选错盘符号将造成其它 ┃
ECHO ┃ ┃
ECHO ┃ 磁盘被格式化,数据丢失。┃
ECHO ┃ ┃
ECHO ┃ ** 不输入回车,程序将退出 ** ┃
ECHO ┃ ┃
ECHO ┗━━━━━━━━━━━━━━━━┛
ECHO.
ECHO 即将检测U盘信息
ECHO.
ECHO 请插上您的U盘,等系统确认后继续
echo.
pause
cls
ECHO.
ECHO.
ECHO 检测U盘信息. . .
fbinst --list
ECHO.
ECHO 再次检测U盘信息. . .
fbinst --list
set slc=
set nhd=
echo.
ECHO *** 不输入盘号继续,程序将退出 ***
echo.
set /p slc=请输入对应的U盘号数字后[Enter]继续:hd
if not "%slc%"=="" set nhd=%slc%
IF /I "%nhd%"=="" goto quit2
ECHO.
CLS
ECHO.
ECHO 请选择要制作的模式
ECHO.
ECHO ┏━━━━━━━━━━┓
ECHO ┃ ┃
ECHO ┃ 0 不格式化 ┃
ECHO ┃ ┃
ECHO ┃ 1 USB—HDD—FAT32 ┃
ECHO ┃ ┃
ECHO ┃ 2 USB—HDD—FAT16 ┃
ECHO ┃ ┃
ECHO ┃ 3 USB—ZIP—FAT32 ┃
ECHO ┃ ┃
ECHO ┃ 4 USB—ZIP—FAT16 ┃
ECHO ┃ ┃
ECHO ┃ 5 USB—ZIP--FAT16 ┃
ECHO ┃ [复制BPB到MBR] ┃
ECHO ┃ ┃
ECHO ┗━━━━━━━━━━┛
ECHO.
ECHO ┏━━━━━━━━━━┓
ECHO ┃ 6 还原U盘至初始态 ┃
ECHO ┗━━━━━━━━━━┛
ECHO.
set mod=
set slc=
set /p slc=请输入对应的制作模式[Enter]继续:
if not "%slc%"=="" set mod=%slc%
IF /I "%mod%"=="" goto quit4
If /I "%mod%"=="0" goto check
If /I "%mod%"=="6" goto check
ECHO.
cls
ECHO.
ECHO 创建U盘启动隐藏区并格式化
ECHO.
ECHO ┏━━━━━━━━━━━━━━━┓
ECHO ┃ ┃
ECHO ┃ 请输入U盘启动隐藏区容量(M) ┃
ECHO ┃ ┃
ECHO ┃ 0 不创建和不格式化 ┃
ECHO ┃ ┃
ECHO ┗━━━━━━━━━━━━━━━┛
ECHO.
ECHO.
set slc=
set size=
set /p slc=请输入U盘启动隐藏区大小(M),回车继续:
if not "%slc%"=="" set size=%slc%
echo.
:check
cls
ECHO.
ECHO ┏━━━━━━━━━━━━━━━━━┓
ECHO ┃ ┃
ECHO ┃ -- 最后格式化U盘号确认 -- ┃
ECHO ┃ ┃
ECHO ┃ 安装过程会清除所选盘号的所有数据 ┃
ECHO ┃ ┃
ECHO ┗━━━━━━━━━━━━━━━━━┛
ECHO.
ECHO 显示本机储存盘号及容量:
fbinst.exe --list
ECHO.
if not "%nhd%"=="" ECHO 您选择的U盘号是:hd%nhd%
ECHO.
IF /I "%nhd%"=="" ECHO !! 注意: 您未选择储存盘 !!
ECHO.
if /I "%size%"=="0" echo ** 您不创建U盘启动隐藏区 **
if /I "%size%"=="" echo ** 您不创建U盘启动隐藏区 **
if /I "%mod%"=="" ECHO ** 您未选择格式化模式 **
If /I "%mod%"=="0" ECHO ** 所选盘号不进行格式化 **
If /I "%mod%"=="1" ECHO 格式化模式是:hdd_F32 pri_%size%M
If /I "%mod%"=="2" ECHO 格式化模式是:hdd_F16 pri_%size%M
If /I "%mod%"=="3" ECHO 格式化模式是:Zip_F32 pri_%size%M
If /I "%mod%"=="4" ECHO 格式化模式是:Zip_F16 pri_%size%M
If /I "%mod%"=="5" ECHO 格式:Zip_F16 pri_%size%M 复制BPB到MBR
If /I "%mod%"=="6" ECHO ** 还原U盘至初始态 **
ECHO.
set slc=
set /p slc=确认吗?确认后,请输入y后回车继续:
if not "%slc%"=="y" goto start
If /I "%mod%"=="0" goto nf
If /I "%mod%"=="6" goto form
if /I "%nhd%"=="" goto quit2
If /I "%size%"=="" goto quit3
If /I "%size%"=="0" goto quit3
If /I "%mod%"=="" goto quit4
CLS
:form
ECHO.
ECHO 即将格式化U盘
pause
ECHO.
ECHO 正在格式化U盘,请稍后……
If /I "%mod%"=="1" fbinst (hd%nhd%) format --primary %size%m --fat32 --force
If /I "%mod%"=="2" fbinst (hd%nhd%) format --primary %size%m --fat16 --force
If /I "%mod%"=="3" fbinst (hd%nhd%) format --primary %size%m --fat32 --zip --force
If /I "%mod%"=="4" fbinst (hd%nhd%) format --primary %size%m --fat16 --zip --force
If /I "%mod%"=="5" fbinst (hd%nhd%) format --primary %size%m --fat16 --force
If /I "%mod%"=="5" fbinst (hd%nhd%) sync --copy-bpb
If /I "%mod%"=="6" fbinst (hd%nhd%) format --force --raw
If /I "%mod%"=="6" goto quit1
ECHO.
ECHO U盘格式化完毕
:nf
ECHO.
If /I "%mod%"=="0" echo hd%nhd% U盘选择不格式化
ECHO 请手动拔下U盘
ECHO 并再次插入U盘
ECHO 当计算机显示U盘盘符后
ECHO 按回车键, U盘将被写入安装启动项
ECHO.
pause
ECHO.
ECHO 正在安装启动项. . .
fbinst (hd%nhd%) add grldr grldr
fbinst (hd%nhd%) add-menu fb.cfg fb.txt
fbinst (hd%nhd%) add message message
ECHO 正在安装系统文件. . .
ECHO.
ECHO U盘系统维护工具安装完毕
ECHO 程序即将退出
pause
exit
:quit1
ECHO.
ECHO 还原U盘完毕
ECHO U盘将在再次插拔后生效
ECHO 程序即将退出
pause
exit
:quit2
echo.
echo 您未选择储存盘,选择了退出安装程序
ECHO 程序即将退出
pause
exit
:quit3
echo.
echo 您不创建U盘启动隐藏区, 选择了退出安装程序
ECHO 程序即将退出
pause
exit
:quit4
echo.
echo 您未选择储存盘制作模式,选择了退出安装程序
ECHO 程序即将退出
pause
exit
|
|