中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区 » windows 2000/xp/2003/vista的启动项中安装/卸载grub4dos的脚本
作者:
标题: windows 2000/xp/2003/vista的启动项中安装/卸载grub4dos的脚本 上一主题 | 下一主题
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『楼 主』:  windows 2000/xp/2003/vista的启动项中安装/卸载grub4dos的脚本

windows 2000/xp/2003/vista的启动项中安装/卸载grub4dos的脚本 说明: 1,以下安装/卸载脚本,简化自本人的“GGhost一键恢复2008”。 2,支持windows 2000/xp/2003/vista。支持任意语种的系统。 3,启动项中显示名称为“Start Grub4DOS”,延时3秒,请自行修改。 4,去掉了所有文件的复制,请自行复制grldr.mbr和grldr及其它所需文件。 5, windows 2000/xp/2003下使用了第三方工具inifile.exe。(要求放到d:\ggho下) (需要的可从网盘下载:lianjiang2004.ys168.com/) 本人不善长批处理,所示脚本,仅供参考。 gghost.uu1001.com/ ============================= @Echo Off if not %os%.==Windows_NT. goto not_nt cls mode con: cols=76 lines=26 Set TT=安装程序 by lianjiang COLOR f9 TITLE %TT% set gname=Start Grub4DOS set gname2=\grldr.mbr set winver= set ggpath6= set ggpath0=d:\ggho set vid= set timeout=3 ver|find /i " 5.1">nul &&set winver=winnt&&goto sub_001 ver|find /i " 6.0">nul &&set winver=vista&&goto sub_003 ver|find /i " 5.0">nul &&set winver=winnt&&goto sub_001 ver|find /i " 5.2">nul &&set winver=winnt&&goto sub_001 :not_nt cls echo. echo 很抱歉,本软件不能使用于非Windows 2k/xp/2k3/vista环境。 PING/n 5 127.1>NUL Goto Exit :sub_001 set ggpath6= for %%B in (C: D: E: F: G: H: I: J: K: L: M: N: O: P: Q: R: S: T: U: V: W: X: Y: Z:) do ( if exist %%B\boot.ini set ggpath6=%%B&&goto inst ) goto inst :sub_003 set ggpath6=%systemdrive% :inst if not %winver%#==winnt# goto vista_1 :winnt_1 attrib %ggpath6%\boot.ini -r -h -s >nul if not exist %ggpath6%\g_boot.ini Copy %ggpath6%\boot.ini %ggpath6%\g_boot.ini /y >nul %ggpath0%\inifile %ggpath6%\boot.ini [boot loader] timeout=%timeout% >nul %ggpath0%\inifile %ggpath6%\boot.ini [operating systems] %ggpath6%%gname2%="%gname%" >nul attrib %ggpath6%\boot.ini +r +h +s >nul attrib %ggpath6%\g_boot.ini +r +h +s >nul goto exit :vista_1 if not exist %ggpath0%\nul md %ggpath0% >nul bcdedit >%ggpath0%\temp_bcd.txt type %ggpath0%\temp_bcd.txt | find "%gname%" >nul && goto vista_bcd bcdedit /export "%ggpath0%\Bcd_Backup" >nul bcdedit /create /d "%gname%" /application bootsector >%ggpath0%\vid.ini for,/f,"tokens=2 delims={",%%i,In (%ggpath0%\vid.ini) Do ( set vida=%%i ) for,/f,"tokens=1 delims=}",%%i,In ("%vida%") Do ( set vid={%%i} ) echo %vid%>%ggpath0%\vid.ini bcdedit /set %vid% device partition=%ggpath6% >nul bcdedit /set %vid% path %gname2% >nul bcdedit /displayorder %vid% /addlast >nul :vista_bcd bcdedit /timeout %timeout% >nul :exit cls echo. echo 安装完成。 echo. echo 请自行复制grldr.mbr和grldr到%ggpath6% Echo. PING/n 3 127.1>NUL ============================= @Echo Off if not %os%.==Windows_NT. goto not_nt cls mode con: cols=76 lines=26 Set TT=卸载程序 by lianjiang COLOR f9 TITLE %TT% set winver= set ggpath6= set ggpath0=d:\ggho set vid= set timeout=3 ver|find /i " 5.1">nul &&set winver=winnt&&goto sub_001 ver|find /i " 6.0">nul &&set winver=vista&&goto sub_003 ver|find /i " 5.0">nul &&set winver=winnt&&goto sub_001 ver|find /i " 5.2">nul &&set winver=winnt&&goto sub_001 :not_nt cls echo. echo 很抱歉,本软件不能使用于非Windows 2k/xp/2k3/vista环境。 PING/n 5 127.1>NUL Goto Exit :sub_001 set ggpath6= for %%B in (C: D: E: F: G: H: I: J: K: L: M: N: O: P: Q: R: S: T: U: V: W: X: Y: Z:) do ( if exist %%B\boot.ini set ggpath6=%%B&&goto uninst_01 ) goto uninst_01 :sub_003 set ggpath6=%systemdrive% :uninst_01 if not %winver%#==winnt# goto uninst_4 for,/f,"tokens=1",%%i,In (%ggpath0%\vid.ini) Do ( set vid=%%i ) bcdedit /delete %vid% /cleanup >nul bcdedit /timeout %timeout% >nul goto uninst_4a :uninst_4 attrib -h -r -s %ggpath6%\boot.ini >nul if exist %ggpath6%\boot.ggh attrib -h -r -s %ggpath6%\boot.ggh >nul&&del %ggpath6%\boot.ggh >nul ren %ggpath6%\boot.ini boot.ggh >nul findstr /b /i /v /c:"%ggpath6%\grldr" %ggpath6%\boot.ggh>%ggpath6%\boot.ini bootcfg /timeout %timeout% >nul attrib +h +r +s %ggpath6%\boot.ini >nul del %ggpath6%\boot.ggh >nul if exist %ggpath6%\g_boot.ini attrib %ggpath6%\g_boot.ini -r -h -s >nul&&del %ggpath6%\g_boot.ini >nul :uninst_4a cls echo. echo 卸载完成。 Echo. PING/n 3 127.1>NUL




Windows 一键还原 www.yjhy.com
2008-2-20 09:49
查看资料  发短消息  网志   编辑帖子  回复  引用回复
barton
中级用户





积分 480
发帖 197
注册 2006-9-20
来自 黄冈
状态 离线
『第 2 楼』:  

支持一下 看到批处理里的if for就头晕 o(∩_∩)o...


2008-2-20 12:38
查看资料  发短消息  网志   编辑帖子  回复  引用回复
newswan
初级用户





积分 70
发帖 29
注册 2006-1-3
状态 离线
『第 3 楼』:  

支持,慢慢看下。。。


2008-2-22 21:38
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 4 楼』:  

支持的人也太少了点,呵呵。




Windows 一键还原 www.yjhy.com
2008-2-23 10:44
查看资料  发短消息  网志   编辑帖子  回复  引用回复
WLDNA
新手上路





积分 10
发帖 5
注册 2007-4-14
状态 离线
『第 5 楼』:  

Originally posted by lianjiang2004 at 2008-2-23 10:44 AM: 支持的人也太少了点,呵呵。
o(∩_∩)o... 技术嘛,肯定不是那么好懂的,自然就少了点啊,呵呵 辛苦了,偶虽然菜,但是也要把他啃下来 呵呵


2008-2-23 17:46
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
hnfeng
初级用户





积分 89
发帖 36
注册 2007-12-20
状态 离线
『第 6 楼』:  

INIFILE 使用的好!!! (之前发现DOS71安装软盘中有这个工具,从来没留意过它,原来它功能不小呢。谢谢楼主!) 本来我想做一个通用于 DOS、WIN98、NT、ME、2000、XP、2003、Vista 的添加 GRUB4DOS 菜单的批处理,看来 由楼主来完成是最好的了。 看的眼花........ 楼主的程序中好像有一小bug: if not %os%.==Windows_NT. goto not_nt :not_nt cls echo. echo 很抱歉,本软件不能使用于非Windows 2k/xp/2k3/vista环境。 PING/n 5 127.1>NUL Goto Exit :exit cls echo. echo 安装完成。 echo. echo 请自行复制grldr.mbr和grldr到%ggpath6% Echo. PING/n 3 127.1>NUL 这样以来,即使判断出系统不符合要求,仍然会显示“安装成功。。。”的字样。 另外好像还有一个小问题: 没有判断电脑中最高操作系统(我迟迟没做成功就因为这个原因)并做相应处理。 例如:电脑中安装有 XP 和 Vista,运行上述程序时,如果用户是在 XP 中,程序会继续并把GRUB4DOS菜单安装在 boot.ini 中,而不是 Vista 的启动菜单中。这样也许会有点点不妥。 (期待楼主能做个通用的……)


2008-2-25 17:38
查看资料  发短消息  网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 7 楼』:  

1,关于判断非nt系统的提示问题,这里确实是个bug,写时没注意,谢谢指正。 2,我的处理方法应该没有什么问题。判断当前系统,并进行安装是合理的。 3,至于支持dos,98,me等,个人以为,基本没有什么意义。




Windows 一键还原 www.yjhy.com
2008-2-25 18:08
查看资料  发短消息  网志   编辑帖子  回复  引用回复
hnfeng
初级用户





积分 89
发帖 36
注册 2007-12-20
状态 离线
『第 8 楼』:  

2,我的处理方法应该没有什么问题。判断当前系统,并进行安装是合理的。
当电脑中最高系统是 VISTA, 但是在 XP 中向 BOOT.INI 添加 GRUB4DOS 菜单后,这个菜单会同时出现在 VISTA 和 XP(BOOT.INI) 的菜单中,我个人感觉这样不爽,或者说不完美。
3,至于支持dos,98,me等,个人以为,基本没有什么意义。
确实如你所说,我也觉得没什么意义。


2008-2-27 15:22
查看资料  发短消息  网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 9 楼』:  

这种装法的双系统,假如对出现两个选项感觉不舒服的话,vista下可不必安装。




Windows 一键还原 www.yjhy.com
2008-2-27 16:12
查看资料  发短消息  网志   编辑帖子  回复  引用回复
429499381
中级用户





积分 452
发帖 202
注册 2006-12-21
状态 离线
『第 10 楼』:  

我没装一键恢复2008,运行后发现一个小问题, 如下 [boot loader] timeout=3 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect C:\mxldr=MaxDOS v5.8s C:\MAOTAO\MAOTAO.BIN="WinPE By: 老毛桃" c:\grldr= grub 4d c:\CGDos=Auto Ghost 1. 你会发现 c:\grldr= grub 4d 差几个字, 不知道是不是个别现象,


2008-2-27 18:09
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 11 楼』:  

第一次看到出现这种情况的报告。似乎没有理由出现,呵呵。 不妨在cmd下手动输入添加grldr的那句看看。 看来你是自己修改过了的,不知修改了哪些地方。




Windows 一键还原 www.yjhy.com
2008-2-27 18:23
查看资料  发短消息  网志   编辑帖子  回复  引用回复
yaoxin1588
初级用户





积分 48
发帖 23
注册 2008-1-10
状态 离线
『第 12 楼』:  

grldr同破解VISTA文件同名。


2008-3-8 19:25
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 13 楼』:  

这不是grub的问题,而是破解者随意使用文件文件名的问题。




Windows 一键还原 www.yjhy.com
2008-3-8 19:41
查看资料  发短消息  网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: