smine 发表于 2011-12-15 14:28:32

GRUB全自动菜单引导ISO,IMG,IMA,本地系统,完善资源管理器,支持文本查看(2014-12-9)

本帖最后由 smine 于 2014-12-9 21:55 编辑

请注意,最新的下载地址在本文末尾处。

先看截图:

主菜单


高级菜单


搜索本地系统菜单





说明:

1.本自动引导工具会自动列举/grub/imgs 下的所有可启动镜像,并以菜单形式显示出来供选择,支持ISO,IMG,IMA,支持超长字符,支持中文字符

2.高级菜单中集成了Hotdll的F6IMG模块,配合自动引导ISO功能,实现免F6安装系统

3.高级菜单中支持搜索并引导本地硬盘的xp,2003,win7,win2008,vista系统,自动搜索所有磁盘上的系统引导文件,支持多盘多系统选择引导,每个系统均配备两个引导方式:如,“从(hd1,0)启动”表示引导(hd1,0)的第一扇区;“从(hd1,0)/ntldr 启动”表示引导(hd1,0)上的ntldr,着两种方式有不同的用途:当引导扇区破坏时,可以通过“从(hd1,0)/ntldr 启动”来引导;当使用了KONBOOT免口令模块后,必须从第一扇区引导才能成功。

4.使用方法:用BOOTICE.EXE将U盘格式化,并选择用Grub4dos引导,然后把压缩包里的一个文件“grldr”和一个目录“grub”放到U盘根目录下,然后把你自己的ISO,IMG,IMA镜像放到U:\GRUB\IMGS\ 下即可。

5.注意 文件名可以有空格了!

6.其他扩展使用方法:

安装和使用

U盘
需要用BOOTICE.EXE把GRUB安装到U盘,然后只需在U盘根目录放置以下文件即可:

grldr

XP,03 系统
需要在C盘根目录放置以下文件:

grldr
然后在boot.ini里加一行:
C:\GRLDR="多功能引导" 即可

WIN7系统
需要在C盘根目录放置以下文件:

grldr
grldr.mbr
然后在BCD里创建GRUB引导项即可,可以使用BcdTool创建实模式启动项



本批处理支持直接加载ISO安装xp,2003,win7系统,看下面的方法:

A:xp,2003系列

1.准备好U盘,写入Grub引导
2.把xp的ISO文件复制到U盘根目录,或者其他目录
3.用U盘启动电脑,出现主菜单后,按高级菜单,选择F6IMGX86,这一步必不可少,就算你的硬盘是IDE的,也必须这样操作
4.返回到主菜单,打开资源管理器,找到xp的ISO文件,记住xp的ISO文件所在的磁盘根,一般这里是(hd0,0),记下(hd0)
再根据资源管理器里的磁盘的内容,判断你要把系统安装到那个硬盘的根,这里一般可以找到(hd1,0) (hd1,1) (hd1,2)的磁盘,记住(hd1)
5.返回主菜单,进入高级菜单,选择磁盘映射,第一块磁盘选择第4步记下的(hd0),然后第二块磁盘选择第4步记下的(hd1),交换成功后返回
6.打开资源管理器,可以看到磁盘根已经交换过了,比如上例中你会发现原来的U盘的(hd0,0)变成了(hd1,0),原来的(hd1,0) (hd1,1) (hd1,2)变成了(hd0,0) (hd0,1) (hd0,2),
打开u盘,找到xp的ISO文件,打开后选择加载镜像到内存并引导(1G以上内存建议选这项,装机速度快)(小内存机器选择加载镜像并引导),出现“Press Any Key Boot from cd/dvd”时一定要记得按回车
7.出现其他F2,F6提示都不要再按任何键,直到装系统开始,按正常步骤装完,直到重启
8.重启后任然用U盘启动,出现主菜单后,按高级菜单,选择F6IMGX86
9.进入高级菜单,选择磁盘映射,参照前面的方法完成磁盘映射
10.返回主菜单,打开资源管理器,打开u盘,找到xp的ISO文件,打开后选择加载镜像到内存并引导(1G以上内存建议选这项,装机速度快)(小内存机器选择加载镜像并引导),出现“Press Any Key Boot from cd/dvd”时一定要记得不要按任何键
11.等着系统自己开始安装,以后的步骤大家都会,照提示做即可


B:win7系列

1.准备好U盘,写入Grub引导
2.把WIN7的ISO文件复制到U盘根目录,或者其他目录,到网上下载一个软件,叫做VDM虚拟光驱,复制到U盘根目录
3.由于WIN7的ISO文件很大,不能加载到内存启动,只能选择加载镜像并启动,所以这里必须保证WIN7的ISO连续存放,要保证连续存放,有两个办法(1,把U盘格了,把镜像复制进去就是连续的;2,用软件Contig.exe整理)
4.仿照XP的方法映射磁盘,交换系统硬盘为(hd0),U盘为(hd1),成功后返回【这个步骤不一定必要,我的机器可以不交换也能装】
5.打开资源管理器,打开u盘,找到WIN7的ISO文件,打开后选择加载镜像并引导
6.出现现在安装windows的界面时,按下shift+F10,出现cmd命令行窗口
7.输入notepad回车,打开记事本
8.在记事本里点文件,选择打开,在打开对话框里的文件类型选所有文件,然后找到U盘里的虚拟光驱软件:VDM.EXE,记得在VDM.EXE上点右键,选择打开,这样VDM.EXE就运行了
9.在VDM里点装载,找到WIN7的iso镜像,按默认装载为虚拟光驱
10.同样用记事本打开的方式,找到新虚拟的光驱里的setup .exe,右键选择打开,然后按提示安装完成即可,重启的时候不用插U盘了,直接重启安装即可。


注,以上VDM方式加载ISO似乎不支持64位系统,可以用Imdisk代替VDM来虚拟光驱,能支持32位和64位WIN7的安装

用法:
解压缩Imdisk.rar到U盘根目录,然后照以上的办法启动到win7安装界面,然后notepad方法浏览到Imdisk解压缩目录,右键Setup.cmd,选择打开,然后浏览到win7安装镜像ISO的目录,右击WIN7安装镜像,选择“装载到Imdisk虚拟磁盘”,这时候会多出来一个虚拟光驱,notepad浏览到这个虚拟根目录,右键Setup.exe选择打开即可开始安装。




下载地址:

(该连接已经失效,新连接请看下面)


======================下一版更新预告====================

下一版将支持所有盘文件浏览并加载启动等功能,已经有预览版了,只是功能还不够完善,暂时先不放出来。

2011-12-19 更新
===================================================
老规矩,先看图:

增加“资源管理器”模块












说明:

1. 文本查看只支持UTF-8编码的文本,其他文件格式将出现空白或乱码
2.资源管理器暂不支持光驱和软盘,因为太慢。。


2011-12-21 更新
===================================================

说明:
1.本次更新修复了资源管理器文件名或目录名含有空格时引起的BUG,但是镜像文件的文件名还是必须不能含有空格,否组无法加载和引导


2011-12-22 更新
===================================================

说明:
1.本次更新修复了资源管理器文件夹里面包含文件过多引起的BUG,解决了报错 error 30 invalid argument 的问题


2011-12-23 更新
===================================================

说明:
1.本次更新彻底修复了文件名或目录名含有空格时引起的BUG,镜像文件名也可以包含空格!


2012-1-6 更新
===================================================

说明:
1.本次更新修复了一个隐藏的很深的BUG:在原来的资源管理器中,加载镜像并启动以及自动加载镜像到内存并启动的代码生成有问题。


2012-1-12 更新
===================================================

说明:
1.增加文本菜单下中文支持,感谢2011lxmw的帮助
2.修正了map --mem 模式映射的显示问题
3.GRUB\unifont.hex多余,大家可以下载下面的新版,或者自行删除

2012-2-6 更新
===================================================

说明:
1.修正了map --mem 模式映射的显示问题


2012-2-27 更新
===================================================
1.增加了磁盘映射功能
2.修改了磁盘映射功能显示的问题,屏蔽了源磁盘和目标磁盘是同一磁盘时映射的BUG


2012-2-28 更新
===================================================
1.修正了磁盘映射工具在CD上启动时无法使用的BUG
2.统一使用短文件名


2012-3-1 更新
===================================================
1.增加了ANSI文件显示功能,独创GB2312-UTF8编码转换函数,首次用Grub4Dos实现
2.修复了上一版不能切换到VBE模式的重大BUG
3.修复了原来文件查看功能汉字显示不全的BUG





2012-3-18 更新
===================================================
1.合并ANSI文本读取和UTF8文本读取功能,自动判断文本编码并用合适的方式打开
2.修正了文本浏览器字数过多时截断的BUG
3.文本浏览器增加阅读位置和系统时间提示,下次继续阅读时
   只要输入命令“(bd)/GRUB/viewtext [文本路径] [阅读位置]”即可接着阅读

娱乐贴图:



2012-3-19 更新
===================================================
1.文件打开方式中增加了"做为RAMOS加载到内存并启动"
2.文件打开方式中不再根据扩展名判断文件加载方式,因为像.gz这样的扩展名,
   不知道是什么类型的镜像,不好判断,再者,像.IMG这样的扩展名,也不好区分是软盘镜像还是硬盘镜像
3.修复了文件浏览器可能把上一个文件的最后一行显示到下一个文件开头的BUG


2012-3-31 更新
===================================================
1.修正原来磁盘交换模块交换(bd)设备时强制指定(bd)导致的BUG
2.全新的(bd)定向算法,定向更准确
3.VBE模式显示效果微调,去除GRUB方框,更换背景图片,修改字距和行距


下载地址:


由于115网盘的报废,旧链接全部失效,所以发百度网盘链接:



2014-1-8 更新
===================================================
1.增加对(bd)/GRUB/IMGS/下的.lst菜单文件的识别和自动显示
2.增加将任意位置的可引导镜像link到(bd)/GRUB/IMGS/下以便在菜单首页识别和显示,用法示例:
假设有一个镜像文件D:/MYISO/WINPE/WIN2003PE.ISO,则使用步骤如下:
   a.在(bd)/GRUB/IMGS/下新建文本文件(文件名任意,假设为WIN2003PE.TXT)
   b.修改WIN2003PE.TXT文件的内容为/MYISO/WINPE/WIN2003PE.ISO并保存(多个镜像文件可以分多行写).
   c.重命名文件WIN2003PE.TXT为WIN2003PE.glnk

下载地址:




2014-1-9 更新
===================================================
1.修复上一版glnk不支持中文的问题.
2.修复上一版glnk不支持多行的问题.

下载地址:




2014-1-13 更新
===================================================
1.修复上一版glnk中无效地址导致菜单不显示的问题

下载地址:




2014-5-22 更新
===================================================
1.glnk文件增加指定文件夹功能,当glnk文件指定的是文件夹(路径必须以“/”结尾)时,将列举该文件夹下的所有文件,并按照处理/GRUB/IMGS的逻辑处理。
glnk文件示例:
1). 链接单个文件示例:
假设有一个镜像文件D:/DIYISO/WINPE/DIY_WIN2003PE.ISO,则使用步骤如下:
    a.在(bd)/GRUB/IMGS/下新建文本文件(文件名任意,假设为WIN2003PE.TXT)
    b.修改WIN2003PE.TXT文件的内容为/DIYISO/WINPE/DIY_WIN2003PE.ISO并保存(多个镜像文件可以分多行写).
    c.重命名文件WIN2003PE.TXT为WIN2003PE.glnk(或者任意文件名,后缀必须是.glnk)

2). 链接文件夹示例:
假设有一个镜像文件夹D:/DIYISO/,则使用步骤如下:
    a.在(bd)/GRUB/IMGS/下新建文本文件(文件名任意,假设为DIYMENU.TXT)
    b.修改DIYMENU.TXT文件的内容为/DIYISO/并保存(多个镜像文件夹可以分多行写,必须以“/”结尾).
    c.重命名文件DIYMENU.TXT为DIYMENU.glnk(或者任意文件名,后缀必须是.glnk)

下载地址:



2014-5-31 更新
===================================================
1.修复上一版使用find不能查找文件夹的问题。
2.修复上一版某些情况下陷入死循环的问题。
3.禁止显示多余的输出信息
4.修复自动搜索光盘可能导致的卡死问题

下载地址:



2014-5-31 第二次更新
===================================================
1.修复上一版判断文件存在时的性能问题,优化判断逻辑。
2.修复上一版嵌套glnk引起死循环的问题。从这一版开始,支持glnk多层嵌套,即glnk指向的文件夹里面可以包含glnk文件,glnk也可以指向新的glnk文件,建议嵌套层数不要太多。
3.更新grldr版本为grub4dos-0.4.6a-2014-05-13,支持碎片直接map
4.新版本grldr支持 usb2.0 驱动设备枚举,所以新增usb2.0 驱动设备枚举的高级菜单。

下载地址:



2014-12-9 更新
===================================================
1.修复上一版在ud中使用时镜像重复显示的问题。
2.在DIYISO下增加glnk的使用说明
下载地址:

jimewin 发表于 2014-12-23 22:12:39

看了http://bbs.wuyou.net/forum.php?mod=viewthread&tid=299643,想用smine大的自动菜单模板做一个能支持UEFI的光盘合盘,2011hiboy大的光盘模板里是直接调用的WINPE_X86.WIM和WINPE_X64.wim文件,smine大,全自动菜单模板能直接列出WIM文件的PE文件菜单吗或怎么通过菜单调用WINPE_X86.WIM和WINPE_X64.wim文件

cwnew02 发表于 2016-9-24 21:12:59

怎么我启动不了呢,吹得不错

拿铁不加糖 发表于 2011-12-15 18:56:35

这个不错哦!下载来看一下!

2010wylwyl 发表于 2013-4-29 16:11:12

GRUB的应用越来越好了……

fukystone 发表于 2013-4-29 11:38:01

smine 发表于 2013-4-29 09:03 static/image/common/back.gif
\n替换成\x5Cn或者\x5C\x6E

多谢!
另还有一问题,变量%file%是带分区(例如(hd0,0)\boot\imgs\img.iso)这样的形式,但我只要目录和文件名部分(\boot\imgs\img.iso),请问怎么处理这个变量能达到效果?

smine 发表于 2013-4-29 09:03:41

本帖最后由 smine 于 2013-4-29 09:23 编辑

\n替换成\x5Cn或者\x5C\x6E

fukystone 发表于 2013-4-28 12:31:48

本帖最后由 fukystone 于 2013-4-28 12:36 编辑

smine 发表于 2013-3-19 11:52 static/image/common/back.gif
使用 MsgDiyer.exe 修改main.msg 和view.msg即可修改gfxmenu 模式下的背景,解压bg.lzma即可修改vbe模式 ...

一个问题请老大帮忙看一下:
我修改了automenu文件,希望能支持firadisk模拟内存盘,主要是:iso部分,但是语句中包含了\n,结果实际运行中被自动分行了,请问怎么写语句能保持原样?
:iso
echo -e title         \xE5\x90\xAF\xE5\x8A\xA8\x20\x20%~n1                                                                 >> (md)0x23000+0x10
echo -e clear                                                                                                                >> (md)0x23000+0x10
echo configfile (md)0x23000+0x10 | echo -e \x20\x7C\x7C\x20 | echo map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)                 >> (md)0x23000+0x10
echo -e map %file% (0xff)                                                       \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
echo -e map --hook                                                            \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
echo -e write (99) \nStartOptions=cdrom,vmem=find:%file%;\n\0         \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
echo -e chainloader (0xff)                                                            \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
exit

附全部菜单:!BAT
debug off
::目前支持到grldr-2012-6-19,后面的版本命令有修改,不支持font && font /BOOT/GRUB/ufont.gz ,run的菜单返回configfile (md)4+8也不支持
::grldr-2012-6-19以后的新版本的命令修改:
::run菜单返回:(不支持(md)4+8)
::write 0x307ff8 1
::configfile
::run字库重置:(不支持&&)
::font
::font /BOOT/GRUB/ufont.gz
checkrange 20110918:-1 read 0x8278 || echo Please use grub4dos-0.4.5b-2011-09-18 or above! && exit 1

::记录启动设备
set bootdev=%~d0

::如果有分区号,则取出分区号
if '%bootdev:~-3,1%'==',' set bootpart=%bootdev:~-2,1%

::获得菜单用bd变量
echo -e \x25bootdev\x25 | set menudev=

::初始化NTBOOT
if not exist NTBOOT set NTBOOT=/BOOT/NTBOOT/NTBOOT

::菜单支持参数:BOOT/IMGS/;含义为查找所有分区下BOOT\IMGS目录中的启动文件
::BOOT前不加路径,代表查找所有分区,IMGS后加/代表目录
set path=%1
set i=0
set exitnum=0

::主菜单
echo -e debug off\ndefault 1\ntimeout 10\ngfxmenu %menudev%/BOOT/GRUB/main.msg\nsplashimage %menudev%/BOOT/GRUB/bg.lzma\nfont %menudev%/BOOT/GRUB/ufont.gz\n        > (md)0x23000+0x10
call :defaultmenu
call :listdrive

configfile (md)0x23000+0x10
configfile (md)0x23400+0x100
exit

::查找分区及目录
:listdrive
debug normal
find --ignore-floppies                              > (md)0x23300+0x10
debug off
echo -e \x20\x20\x20\x20\x20                        >> (md)0x23300+0x10
call :processdrive
exit

:processdrive
cat --skip=%i% --length=1 (md)0x23300+0x10 | set n=
if exist n set outstr=%outstr%%%%n%
if exist n set exitnum=0
if not exist n call :showdrive %outstr%
if not exist n set outstr=
if not exist n set /a exitnum=%exitnum%+1
set /a i=%i%+1
if %exitnum%==4 exit
goto :processdrive

:showdrive
set curdrv=%1
if not '%curdrv%'=='' if '%curdrv:~,1%'=='(' if '%curdrv:~-1%'==')' call :listdir %curdrv%
exit

:listdir
set drive=%1
echo -e        > (md)0x23500+0x100
ls %drive%/%path% | call :list
cat (md)0x23500+0x100 >> (md)0x23400+0x100
exit

:list
if "%1"=="" exit
if not "%1"=="" call :processitem %drive%/%path%%%1
shift
goto :list
exit

::自动生成菜单
:processitem
set item=%1
ls %item%/ > nul || call :automenu %item%
ls %item%/ > nul || exit
exit

:automenu
set file=%1
if "%file%"=="" exit
if not "%file%"=="" call :makemenu %file%
shift
goto :automenu
exit

:makemenu
if /i "%~x1"==".iso" && call :iso %file%
if /i "%~x1"==".img" && call :img %file%
if /i "%~x1"==".ima" && call :ima %file%
if /i "%~x1"==".bin" && call :bin %file%
if /i "%~x1"==".lst" && call :lst %file%
if /i "%~x1"==".vhd" && call :nt6 %file%
if /i "%~x1"==".vhdx" && call :nt6 %file%
if /i "%~x1"==".wim" && call :nt6 %file%
if /i "%~x1"==".is_" && call :pe1 %file%
exit

:nt6
echo -e title         \xE5\x90\xAF\xE5\x8A\xA8\x20\x20%~n1                                                                        >> (md)0x23000+0x10
echo -e clear                                                                                                                >> (md)0x23000+0x10
echo configfile (md)0x23000+0x10 | echo -e \x20\x7C\x7C\x20 | echo command %NTBOOT% NT6=%file%                        >> (md)0x23000+0x10
exit

:pe1
echo -e title         \xE5\x90\xAF\xE5\x8A\xA8\x20\x20%~n1                                                                >> (md)0x23000+0x10
echo -e clear                                                                                                                >> (md)0x23000+0x10
echo configfile (md)0x23000+0x10 | echo -e \x20\x7C\x7C\x20 | echo command %NTBOOT% pe1=%file%                        >> (md)0x23000+0x10
exit

:iso
echo -e title         \xE5\x90\xAF\xE5\x8A\xA8\x20\x20%~n1                                                                 >> (md)0x23000+0x10
echo -e clear                                                                                                                >> (md)0x23000+0x10
echo configfile (md)0x23000+0x10 | echo -e \x20\x7C\x7C\x20 | echo map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)                 >> (md)0x23000+0x10
echo -e map %file% (0xff)                                                       \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
echo -e map --hook                                                            \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
echo -e write (99) \nStartOptions=cdrom,vmem=find:%file%;\n\0         \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
echo -e chainloader (0xff)                                                            \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
exit

:img
:ima
echo -e title         \xE5\x90\xAF\xE5\x8A\xA8\x20\x20%~n1                                                                 >> (md)0x23000+0x10
echo -e clear                                                                                                                >> (md)0x23000+0x10
echo configfile (md)0x23000+0x10 | echo -e \x20\x7C\x7C\x20 | echo map --mem %file% (fd0)                >> (md)0x23000+0x10
echo -e map --hook                                                        \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
echo -e rootnoverify (fd0)                                                \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
echo -e chainloader (fd0)+1                                                \x7C\x7C configfile (md)0x23000+0x10                >> (md)0x23000+0x10
exit

:bin
echo -e title         \xE5\x90\xAF\xE5\x8A\xA8\x20\x20%~n1                                                                        >> (md)0x23000+0x10
echo -e clear                                                                                                                >> (md)0x23000+0x10
echo configfile (md)0x23000+0x10 | echo -e \x20\x7C\x7C\x20 | echo kernel %file%                        >> (md)0x23000+0x10
exit

:lst
echo -e title         \xE5\x90\xAF\xE5\x8A\xA8\x20\x20%~n1                                                                       >> (md)0x23000+0x10
echo -e clear                                                                                                                >> (md)0x23000+0x10
echo configfile (md)0x23000+0x10 | echo -e \x20\x7C\x7C\x20 | echo configfile %file%                        >> (md)0x23000+0x10
exit

:defaultmenu
echo -e title         \xE8\xB5\x84\xE6\xBA\x90\xE7\xAE\xA1\xE7\x90\x86\xE5\x99\xA8                                        >> (md)0x23000+0x10
echo -e command %menudev%/BOOT/GRUB/filelist                                                                                >> (md)0x23000+0x10
echo -e                                                                                                                >> (md)0x23000+0x10
echo -e title         \xE9\xAB\x98\xE7\xBA\xA7\xE8\x8F\x9C\xE5\x8D\x95                                                        >> (md)0x23000+0x10
echo -e configfile (md)0x23100+0x10                                                                                        >> (md)0x23000+0x10
echo -e                                                                                                                >> (md)0x23000+0x10


::高级菜单
echo -e debug off\ndefault 11\ntimeout 10\ngfxmenu %menudev%/BOOT/GRUB/main.msg\nsplashimage %menudev%/BOOT/GRUB/bg.lzma\nfont %menudev%/BOOT/GRUB/ufont.gz\n        > (md)0x23100+0x10

echo -e title         GRUB\x20\x20\xE5\x91\xBD\xE4\xBB\xA4\xE8\xA1\x8C                                                        >> (md)0x23100+0x10
echo -e commandline                                                                                                        >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         RUN\x20\x20\x20\x20\xE5\x91\xBD\xE4\xBB\xA4\xE8\xA1\x8C                                                >> (md)0x23100+0x10
echo -e font\x20&&\x20font /BOOT/GRUB/ufont.gz                           \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e graphicsmode -1 640                                              \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e terminal --font-spacing=0:3                                    \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e command run                                                                                                         >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         RUN\x20\x20AUTOMENU\x20\x20BY\x20\x20DPMS                                                                >> (md)0x23100+0x10
echo -e font\x20&&\x20font /BOOT/GRUB/ufont.gz                        \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e graphicsmode -1 640                                             \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e terminal --font-spacing=0:3                                     \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e command run --fira:/BOOT/GRUB/firadisk.img dpms:/BOOT/GRUB/SRS/dpms.lzma--automenu                            >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         CDLINUX\xE5\xBC\x95\xE5\xAF\xBC\xE5\xB7\xA5\xE5\x85\xB7                                                >> (md)0x23100+0x10
echo -e command %menudev%/BOOT/GRUB/linuxmenu CDLINUX                                                                   >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         NTBOOT\xE5\xBC\x95\xE5\xAF\xBC\xE5\xB7\xA5\xE5\x85\xB7                                                >> (md)0x23100+0x10
echo -e command %menudev%/BOOT/GRUB/ntbootlt                                                                                >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         F6IMG(x86)                                                                                        >> (md)0x23100+0x10
echo -e %menudev%/BOOT/GRUB/F6IMG %menudev%/BOOT/GRUB/SRS                 \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e configfile (md)0x23100+0x10                                                                                        >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         F6IMG(x64)                                                                                        >> (md)0x23100+0x10
echo -e %menudev%/BOOT/GRUB/F6IMG --X64 %menudev%/BOOT/GRUB/SRS         \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e configfile (md)0x23100+0x10                                                                                        >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         \xE7\xA3\x81\xE7\x9B\x98\xE6\x98\xA0\xE5\xB0\x84\xE5\xB7\xA5\xE5\x85\xB7                                >> (md)0x23100+0x10
echo -e command %menudev%/BOOT/GRUB/devmap                                \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         \xE4\xBB\x8E\xE5\x85\x89\xE9\xA9\xB1\xE5\x90\xAF\xE5\x8A\xA8                                        >> (md)0x23100+0x10
echo -e cdrom --init                                                        \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e map --hook                                                        \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e chainloader (cd0) \x7C\x7C chainloader (cd1)                        \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         \xE6\x90\x9C\xE7\xB4\xA2\xE5\xB9\xB6\xE5\xBC\x95\xE5\xAF\xBCWINDOWS                             >> (md)0x23100+0x10
echo -e command %menudev%/BOOT/GRUB/findboot bootmgr \x7C\x7C command %menudev%/BOOT/GRUB/findboot ntldr                       >> (md)0x23100+0x10
echo -e configfile (md)0x23100+0x10                                                                                        >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         \xE6\x90\x9C\xE7\xB4\xA2\xE5\xB9\xB6\xE5\xBC\x95\xE5\xAF\xBC\xE8\x8F\x9C\xE5\x8D\x95MENU.LST      >> (md)0x23100+0x10
echo -e configfile %menudev%/BOOT/GRUB/menu.lst                      \x7C\x7C configfile (md)0x23100+0x10                >> (md)0x23100+0x10
echo -e                                                                                                                >> (md)0x23100+0x10
echo -e title         \xE8\xBF\x94\xE5\x9B\x9E\xE4\xB8\xBB\xE8\x8F\x9C\xE5\x8D\x95                                        >> (md)0x23100+0x10
echo -e configfile (md)0x23000+0x10                                                                                        >> (md)0x23100+0x10
exit

my9823 发表于 2011-12-15 14:57:08

你这个和两个run有什么不同之处么?
貌似这个只是多个图形而已!

2010sya 发表于 2011-12-15 15:50:32

不错不错哦,学习一下

2011qw82 发表于 2011-12-15 17:25:03

学习一下,学习一下

zhs509 发表于 2011-12-15 17:27:02

应该是使用了iftitle的吧?

讯极天度 发表于 2011-12-15 17:28:25

不错 很强大 试试

feiyl 发表于 2011-12-15 17:32:17

GRUB的应用越来越好了……

zhs509 发表于 2011-12-15 17:35:27

回复 #5 zhs509 的帖子

发现我猜错了。。。
是用批处理动态生成菜单啊

fh123456 发表于 2011-12-15 17:56:58

下载试试了。。。。。

wenxin 发表于 2011-12-15 20:41:04

这个不错,很有特色。请问楼主:放入的PE是不是有一定的局限性?

[ 本帖最后由 wenxin 于 2011-12-15 20:59 编辑 ]

renchmin 发表于 2011-12-15 21:14:06

楼主做的这个真的很不错的支持了。

2010chizihan 发表于 2011-12-15 21:29:45

很深奥!进来看下热闹!

HY 发表于 2011-12-15 23:32:44

很不错,先下载学习一下,谢谢分享!

smine 发表于 2011-12-16 09:55:36

原帖由 wenxin 于 2011-12-15 20:41 发表 http://bbs.wuyou.net/images/common/back.gif
这个不错,很有特色。请问楼主:放入的PE是不是有一定的局限性?

这是一个G4D批处理,用来引导PE和其他启动镜像的,对于ISO版的PE,基本上都能正常引导

wenxin 发表于 2011-12-16 10:21:09

原帖由 smine 于 2011-12-16 09:55 发表 http://bbs.wuyou.net/images/common/back.gif


这是一个G4D批处理,用来引导PE和其他启动镜像的,对于ISO版的PE,基本上都能正常引导
昨天测试了,加入我心如水的维护版、珍藏版都不能成功进入PE,只有WIN7PE才可以,另外OPE可以

smine 发表于 2011-12-16 11:13:18

原帖由 wenxin 于 2011-12-16 10:21 发表 http://bbs.wuyou.net/images/common/back.gif

昨天测试了,加入我心如水的维护版、珍藏版都不能成功进入PE,只有WIN7PE才可以,另外OPE可以

这个倒挺头疼了,我自动生成的引导ISO的语句也就是
map (bd)/GRUB/IMGS/xx.iso (0xff) || map --mem (bd)/GRUB/IMGS/xx.iso (0xff)
map --hook
chainloader (0xff)
能否贴出你正常引导我心如水的维护版或珍藏版的GRUB代码,我看看有什么不一样的。

wenxin 发表于 2011-12-16 12:18:44

原帖由 smine 于 2011-12-16 11:13 发表 http://bbs.wuyou.net/images/common/back.gif


这个倒挺头疼了,我自动生成的引导ISO的语句也就是
map (bd)/GRUB/IMGS/xx.iso (0xff) || map --mem (bd)/GRUB/IMGS/xx.iso (0xff)
map --hook
chainloader (0xff)
能否贴出你正常引导我心如水的维护版 ...
以下是我的截图,一图正常,回车后出现图二;二图有乱码,回车后是图三;三图也有乱码。图二与图三是汉字部份才是乱码。

[ 本帖最后由 wenxin 于 2011-12-16 12:20 编辑 ]

smine 发表于 2011-12-16 14:32:03

原帖由 wenxin 于 2011-12-16 12:18 发表 http://bbs.wuyou.net/images/common/back.gif

以下是我的截图,一图正常,回车后出现图二;二图有乱码,回车后是图三;三图也有乱码。图二与图三是汉字部份才是乱码。

忘了说了,文件名不能有空格!

wenxin 发表于 2011-12-16 15:00:16

原帖由 smine 于 2011-12-16 14:32 发表 http://bbs.wuyou.net/images/common/back.gif


忘了说了,文件名不能有空格!
果然如此,文件名中不能有空格。以下水PE和各种DOS工具,在虚拟机中测试,全部通过,引导成功,只有最后一个PE在启动过程中蓝屏。

金木水火土 发表于 2011-12-16 18:04:45

谢谢提供
非常实用
以后不用再辛苦的写菜单了

2010yudy 发表于 2011-12-16 19:13:01

灰常实用的东东,,,我等菜鸟之福音

能不能自动生成菜单之后,自动导出一个menu,下次直接读取menu,不用重新批处理生成菜单,,节约时间。。待img文件夹有更新的时候再重新调用批处理自动生成菜单???

wenxin 发表于 2011-12-16 22:37:15

请问楼主:有没有办法使菜单按指定的顺序排列?比如按1、2、3、4、5、6的顺序排列。另外,我发现:适用的ISO最好是全内置、无EZB作第一引导启动菜单的PE。如果有外置,好象加载不上。

[ 本帖最后由 wenxin 于 2011-12-17 14:09 编辑 ]

sratlf 发表于 2011-12-17 00:02:20

回复 #1 smine 的帖子

看了下菜单看你用的大概是6MB处的内存那应该是保留扇区不建议使用

最好换成另外的内存块一个是256K开始的20K还一个是64MB以上分别是(md)0x200 和 (md)0x20000

写自动菜单的话可以看看chenall的run也是最早的自动菜单 http://chenall.net/post/grub4dos_run/

后来有我和zxw写的增强版的在grub区

fxyq 发表于 2011-12-17 00:11:30

原帖由 sratlf 于 2011-12-17 00:02 发表 http://bbs.wuyou.net/images/common/back.gif
看了下菜单看你用的大概是6MB处的内存那应该是保留扇区不建议使用

最好换成另外的内存块一个是256K开始的20K还一个是64MB以上分别是(md)0x200 和 (md)0x20000

写自动菜单的话可以看看chenall ...

这个建议很好。
楼主作的很不错,学习了……

ccssaakk 发表于 2011-12-17 10:07:32

文件放在硬盘里,加上启动项也很好用,非常好!!

yj0176 发表于 2011-12-17 10:17:45

支持楼主更进一步,做的更好。

a102135 发表于 2011-12-17 12:15:38

楼主好,向楼主学习!我看到你的作品中automenu中的菜单没有中文,请教下你的中文菜单是那里来的呢?

sratlf 发表于 2011-12-17 12:50:36

回复 #28 a102135 的帖子

把中文换成utf8编码了比如 测试 两个汉字的utf8编码就是 \xE6\xB5\x8B\xE8\xAF\x95

zhs1997 发表于 2011-12-17 13:13:15

回复 #29 sratlf 的帖子

学习了,原来如此。。。
之前就一直纳闷打开都没看到汉字,汉字哪来的!
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: GRUB全自动菜单引导ISO,IMG,IMA,本地系统,完善资源管理器,支持文本查看(2014-12-9)