|
|
发表于 2011-7-28 18:04:48
|
显示全部楼层
想实现以下图的功能是:
[F9] 启动最后分区 ONEKEY.IMA
[F10] 从最后磁盘分区PBR启动PE
5秒后自动启动C盘系统
因为F11我试过,没有成功,奇怪???先改成F10操作
找到原因了:我的键盘配备,不支持F11和F12
下载c大的安装WEE,把BOOT/PRELOAD.BAT覆盖
PRELOAD.BAT:
!BAT:PW:--md5 $1$U4c/$IItnjIVV/t/tYd76x14tL1
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
pager on
if exist timeout exit
pager off
terminal console
debug -1
set NTBOOT=%~dp0NTBOOT/NTBOOT
set [email=saveroot=%@root%]saveroot=%@root%[/email]
clear
find --set-root --devices=h /qgho.### makeactive --status && goto :QGHO_FAST
cat --length=1 %~dp0MODBOOT/QGHO/QGHO.SET | set key=
if not "%key%"=="!" goto :QGHO_START
%~dp0grub/vfont %~dp0preload.fnt
echo
echo -P:2120 $[0106]纮羴聜脙膭艆 $[1004]F9 #这个是中文,可以删除
echo -P:2320 $[0107]PRESS [F9] TO RECOVERY, [F10] TO WinPE
echo -P:00-16 $[0103]%@DATE% #这三个是右上角信息,可以删除
echo -P:01-16 $[0102]F10 $[0107]TO WinPE
echo -P:02-16 $[0102]F9 $[0107]RECOVERY
pause --test-key --wait=5 #设定秒数,1秒太少了。
set /A key=*0x4CB00
%~dp0grub/vfont
clear
debug off
goto %key% || echo Default Boot.
:0x3B00 F1
:0x3C00 F2
:0x3D00 F3
:0x3E00 F4
:0x3F00 F5
:0x4000 F6
:0x4100 F7
:0x4200 F8
:0x8500 F11
:0x8600 F12
::按了非F9/F10/SIFT+F10之外的键都会执行这些,上面的那个只是为了留个示范。
::如果你在按F8的时候执行某些内容,可以把标签:0x4200放到本段EXIT后面再写上执行的命令就可以了。
:default
::如果有存在oemslic.bin文件,则尝试自动加载.
root %~d0
if exist %~dp0oemslic.bin && %~dp0grub/slic %~dp0oemslic.bin
if exist %~dp0SYS_MENU.LST && configfile %~dp0SYS_MENU.LST
find --set-root --devices=h makeactive --status
chainloader +1
boot
exit
#这两个目标自己修改
:0x4300 F9
map --mem /BOOT/IMGS/ONEKEY.IMA (fd0)
map --hook
chainloader (fd0)/io.sys
exit
:0x4400 F10
find --set-root /WXPE/SETUPLDR.BIN
chainloader /WXPE/SETUPLDR.BIN || chainloader --force (cd)/WXPE/SETUPLDR.BIN
boot
exit
::#显示菜单####自动添加附加的菜单项目###########
:0x5D00 Shift+F10
echo Loading......
color blue/green yellow/red white/magenta white/magenta
command --set-path=(bd)/BOOT/GRUB/
set default=0
set timeout=5
set number=5
map %~dp0GRUB/MENU.LST (rd)
set base_dir=%~dp0ADDONS
ls %~dp0ADDONS/# | call :ADDONS=
configfile (rd)+1
exit
:ADDONS
if "%1"=="" exit
echo -n title %number%. >> (rd)+1
cat %base_dir%/%1 >> (rd)+1
echo >> (rd)+1
set /a number=%number%+1
shift 1
goto :ADDONS
[ 本帖最后由 ali88home 于 2011-7-29 17:08 编辑 ] |
|