无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 4731|回复: 12
打印 上一主题 下一主题

[分享] 玩具:一步装系统BAT

[复制链接]
跳转到指定楼层
1#
发表于 2012-6-22 20:09:38 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
做了一个小玩具
一步装系统的
下载地址:http://www.ctdisk.com/file/7880214
调用YBZXT即可
格式:
YBZXT ISO文件绝对路径 [1 KEY 仿真盘驱动]
因为各种问题
所以到DOS下一游了一下
请帮忙品鉴
更新了一下
补上CD支持
源码:
  1. !BAT    by 2011czmxbb52 @ 20120622
  2. checkrange 20111001:-1 read 0x8278 || call :error Not supported grub4dos version!
  3. map --mem=0x20000 %~f0 (rd) > nul
  4. cat --locate=\x1f\x8b --number=1 (rd)+1 > nul || exit 2
  5. calc *0x82d8=*0x82d8-%?% > nul
  6. calc *0x82d0=*0x82d0+%?% > nul
  7. map --mem (rd)+1 (fd7) > nul
  8. map --rehook
  9. write (md)0x20001+1 %1
  10. ::ISO文件位置
  11. if /i not "%3"=="" write (md)0x20002+1 %3 && write 0x44FFF 1
  12. if /i not "%4"=="" write (md)0x20003+1 %3 && write 0x44FFE 1
  13. command %~dp0/F6IMG %~dp0/SRS
  14. cat (md)0x20003+1 | set mapdri=
  15. checkrange 1 read 0x44FFE && echo You specify the %mapdrv% driver as you want to use the emulation disk drive is loading ... && map --mem (hd-1,0)/%mapdri%.gz (fd1)
  16. checkrange 1 read 0x44FFE || if not exist (fd1)/TXTSETUP.OEM && map --mem (hd-1,0)/wvblock.gz (fd1)
  17. if not exist %~f1 && goto :prompt ! goto :install

  18. :write_untt
  19. insmod (fd7)/INIFILE.MOD
  20. cat (md)0x20002+1 | command INIFILE (fd7)/winnt.sif [UserData] ProductKey=
  21. delmod INIFILE

  22. :install
  23. insmod (fd7)/FAT.MOD
  24. map --mem (fd7)/MSDOS.GZ (hd)
  25. map --hook
  26. checkrange 1 read 0x44FFE && call :write_untt
  27. command fat copy (fd7)/winnt.sif (hd-1,0)/winnt.sif
  28. cat (md)0x20001+1 | set file=
  29. map %file% (0xFF) || map --mem %file% (0xFF)
  30. map --e820cycles=3
  31. map --unmap=7
  32. map --hook
  33. chainloader (hd-1,0)+1 || chainloader (hd-1,0)/io.sys
  34. rootnoverify (hd-1,0)
  35. boot

  36. :prompt
  37. clear
  38. echo The file you specified was not found.
  39. echo -e -n \n
  40. echo At the prompt enter the ISO file you want to use.
  41. echo -e -n \n
  42. set /p file=YBZXT>
  43. if not exist %file% && goto :prompt ! goto :install
复制代码

[ 本帖最后由 2011czmxbb52 于 2012-6-22 21:02 编辑 ]

评分

参与人数 1无忧币 +10 收起 理由
2010ttt + 10 原创内容

查看全部评分

13#
发表于 2012-6-28 22:20:08 | 只看该作者
有谁实践了, 给个结论啊, 好像没人用、、、
回复

使用道具 举报

12#
发表于 2012-6-28 12:24:01 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

11#
 楼主| 发表于 2012-6-27 19:46:56 | 只看该作者
原帖由 2011jipgl 于 2012-6-27 02:35 发表
这个不象是玩具啊!
    这里用了3个“操作系统”,G4D,MSDOS,WINDOWS,2座“桥”。
第一座“桥梁”是G4D与WVBLOCK(B盘),
第二座“桥梁”是WINNT。SIF与MSDOS(FD7属内存盘随后被转义为硬盘,重启不被清 ...

那个FD7在引导之前已被这句:
map --unmap=7
清除
回复

使用道具 举报

10#
 楼主| 发表于 2012-6-27 19:44:56 | 只看该作者
又更新了一下
http://www.ctdisk.com/file/7991157
主要是修正个别代码错误
还有KEY和驱动可以单独制定了
代码:

  1. !BAT      by 2011czmxbb52 @ 20120622
  2. checkrange 20111001:-1 read 0x8278 || call :error Not supported grub4dos version!
  3. map --mem=0x20000 %~f0 (rd) > nul
  4. cat --locate=\x1f\x8b --number=1 (rd)+1 > nul || exit 2
  5. calc *0x82d8=*0x82d8-%?% > nul
  6. calc *0x82d0=*0x82d0+%?% > nul
  7. map --mem (rd)+1 (fd7) > nul
  8. map --rehook
  9. write (md)0x20001+1 %1
  10. ::ISO文件位置
  11. set temp=%3
  12. if /i "%temp:~5,1%"=="-" && if /i not "%3"=="" write (md)0x20002+1 %3 && write 0x44FFF 1
  13. set temp=%4
  14. if /i "%temp%"=="wvblock" && if /i not "%4"=="" write (md)0x20003+1 %temp% && write 0x44FFE 1
  15. if /i "%temp%"=="firadisk" && if /i not "%4"=="" write (md)0x20003+1 %temp% && write 0x44FFE 1
  16. command %~dp0/F6IMG %~dp0/SRS
  17. cat (md)0x20003+1 | set mapdri=
  18. checkrange 1 read 0x44FFE && echo You specify the %mapdrv% driver as you want to use the emulation disk drive is loading ... && map --mem (fd7)/%mapdri%.gz (fd1)
  19. checkrange 1 read 0x44FFE || if not exist (fd1)/TXTSETUP.OEM && map --mem (fd7)/wvblock.gz (fd1)
  20. if not exist %~f1 && goto :prompt ! goto :install

  21. :write_untt
  22. insmod (fd7)/INIFILE.MOD
  23. cat (md)0x20002+1 | set temp=
  24. command INIFILE (fd7)/winnt.sif [UserData] ProductKey=%temp%
  25. set temp=
  26. delmod INIFILE

  27. :install
  28. insmod (fd7)/FAT.MOD
  29. map --mem (fd7)/MSDOS.GZ (hd)
  30. map --hook
  31. checkrange 1 read 0x44FFE && call :write_untt
  32. command fat copy (fd7)/winnt.sif (hd-1,0)/winnt.sif
  33. cat (md)0x20001+1 | set file=
  34. map %file% (0xFF) || map --mem %file% (0xFF)
  35. map --e820cycles=3
  36. map --unmap=7
  37. map --hook
  38. chainloader (hd-1,0)+1 || chainloader (hd-1,0)/io.sys
  39. rootnoverify (hd-1,0)
  40. boot

  41. :prompt
  42. clear
  43. echo The file you specified was not found.
  44. echo -e -n \n
  45. echo At the prompt enter the ISO file you want to use.
  46. echo -e -n \n
  47. set /p file=YBZXT>
  48. if not exist %file% && goto :prompt ! goto :install
复制代码
回复

使用道具 举报

9#
发表于 2012-6-27 07:22:33 | 只看该作者
有谁试验成功没, 说下啊, 没看明白

[ 本帖最后由 goodtime 于 2012-6-27 07:37 编辑 ]
回复

使用道具 举报

8#
发表于 2012-6-27 02:35:51 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

7#
 楼主| 发表于 2012-6-26 14:37:15 | 只看该作者
原帖由 2012fu520 于 2012-6-26 00:59 发表
我想请问一下,可以安装哪些类型的系统呢,比如原版ISO包的WIN7 还有windows2008的行吗,前提不解压。

目前只能装原版XP、2003
只要在I386目录下有winnt.exe就行了
回复

使用道具 举报

6#
 楼主| 发表于 2012-6-26 14:35:13 | 只看该作者
原帖由 sratlf 于 2012-6-26 12:26 发表
就看明白一点  用了f6img和winvblock驱动  不可能实现一步安装系统的效果

这个玩意进了DOS一游
autoexec.bat会搜索winnt.exe
然后执行它
加上已经配置好的应答文件
回复

使用道具 举报

5#
发表于 2012-6-26 12:26:55 | 只看该作者

回复 #4 2010ttt 的帖子

就看明白一点  用了f6img和winvblock驱动  不可能实现一步安装系统的效果
回复

使用道具 举报

4#
发表于 2012-6-26 12:14:09 | 只看该作者
这个批处理看得我云里雾里的……
回复

使用道具 举报

3#
发表于 2012-6-26 00:59:15 | 只看该作者

回复 #1 2011czmxbb52 的帖子

我想请问一下,可以安装哪些类型的系统呢,比如原版ISO包的WIN7 还有windows2008的行吗,前提不解压。
回复

使用道具 举报

2#
 楼主| 发表于 2012-6-22 21:03:25 | 只看该作者
更新了一下
补上CD支持
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-30 10:33

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表