无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: 527104427

[分享] ..................................

    [复制链接]
发表于 2012-4-16 09:02:35 | 显示全部楼层
非常感谢,我猜想的时把FIRA驱动写入了注册表,还真是这样的。非常感谢。我之所有想你不去管FD0和FD0是因为,你的SISO不加载SIF和SRS也会去管我原来已经加载好的驱动。

再次非常感谢。
回复

使用道具 举报

 楼主| 发表于 2012-4-16 10:18:42 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 09:02 发表
非常感谢,我猜想的时把FIRA驱动写入了注册表,还真是这样的。非常感谢。我之所有想你不去管FD0和FD0是因为,你的SISO不加载SIF和SRS也会去管我原来已经加载好的驱动。

再次非常感谢。

看了一下代码,要实现你的功能也不难,还是顺便更新了一下
回复

使用道具 举报

发表于 2012-4-16 13:00:22 | 显示全部楼层
非常感谢,测试了一上午,还是实现不了一步安装。
我把你下面的代码
cat --locatei=###### --number=1 (0)/TXTSETUP.OEM | set fk0= > nul
if not %fk0%#==# set /A fk0=0x%fk0% > nul
if not %fk0%#==# write --offset=%fk0% (0)/TXTSETUP.OEM value=Parameters,StartOptions,REG_SZ,"cdrom,vmem=find:%iso%;"\r\n > nul
if not %fk0%#==# cat --skip=%fk0% --locate=/ --replace=\\ (0)/TXTSETUP.OEM > nul

中的(0)改为(1),因为我的FIRA驱动在(FD1)中,同时把%iso%替换为/MYISO/MYISO.ISO
一步安装后第二个阶段还是提示插入CD,是不是我哪里弄错了,非常感谢。
回复

使用道具 举报

发表于 2012-4-16 13:03:35 | 显示全部楼层
另外,我是使用的C大的FIRA增强版。
回复

使用道具 举报

 楼主| 发表于 2012-4-16 13:06:06 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 13:03 发表
另外,我是使用的C大的FIRA增强版。

txtsetup.oem要改造

cat --locatei=###### --number=1 (1)/TXTSETUP.OEM | set fk0= > nul
if not %fk0%#==# set /A fk0=0x%fk0% > nul
if not %fk0%#==# write --offset=%fk0% (1)/TXTSETUP.OEM value=Parameters,StartOptions,REG_SZ,"cdrom,vmem=find:%iso%;"\r\n > nul
if not %fk0%#==# cat --skip=%fk0% --locate=/ --replace=\\ (1)/TXTSETUP.OEM > nul

[ 本帖最后由 527104427 于 2012-4-16 13:08 编辑 ]
aa.png
回复

使用道具 举报

发表于 2012-4-16 13:23:11 | 显示全部楼层
测试了一下你的更新--swap参数似乎问题
siso --swap iso=/MYISO/MYISO.ISO srs=n sif=n 3
在加载完ISO并出现磁盘交换信息(信息中没有找到任何磁盘),既然已经--swap为静默方式了,就不应该出现磁盘交换信息了,直接进入安装即可。
回复

使用道具 举报

发表于 2012-4-16 13:27:58 | 显示全部楼层

回复 #125 527104427 的帖子

我看了下C大的FIRADISK.IMG中TXTSETUP.OEM中本身就存在你红色的部分。也就是说是按照你的改造过的。
是不是你的变量%iso%应该支持相对路径吧如/MYISO/MYISO.ISO
因为我使用你的SISO模块安装好后查看注册表中是把相对路径/MYISO/MYISO.ISO加载到虚拟内存光驱中的。

[ 本帖最后由 HUNRYBECKY 于 2012-4-16 13:30 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2012-4-16 13:39:56 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 13:27 发表
我看了下C大的FIRADISK.IMG中TXTSETUP.OEM中本身就存在你红色的部分。也就是说是按照你的改造过的。
是不是你的变量%iso%应该支持相对路径吧如/MYISO/MYISO.ISO
因为我使用你的SISO模块安装好后查看注册表中是 ...


抱歉,很久没动这个东东了,匆忙改了一下,居然改错了,已重新上传


这个%iso%是可以改成/MYISO/MYISO.ISO的


你是什么使用环境?
回复

使用道具 举报

发表于 2012-4-16 13:52:45 | 显示全部楼层
不太明白你说的使用环境,我使用的UD分区。
代码如下

  1. fd2hd && clear
  2. echo 1.加载自制SRS驱动/SRS/MYSRS.IMG到A盘(默认MYSRS.IMG为空白盘)
  3. echo 2.加载自制SRS驱动/SRS/SRS.ISO到A盘(SRS无菜单版模式)
  4. echo 3.加载F6IMG到A盘(F6IMG模式)
  5. echo 4.加载DPMS驱动到A盘(NTBOOT模式)
  6. set /p /u mysrs=请输入SRS驱动对应的数字并回车:
  7. find --set-root --ignore-floppies /SRS/SRS.TXT
  8. if /I "%mysrs%"=="1" && if exist /SRS/MYSRS.IMG && map --mem /SRS/MYSRS.IMG (fd0)
  9. if /I "%mysrs%"=="2" && run --noboot /SRS/SRS.ISO (0xf0) && command SRSF6N (0xf0)/SRS && map --unmap=0xf0 && map --unmap=0x01
  10. if /I "%mysrs%"=="3" && command F6IMG /SRS/F6IMG/
  11. if /I "%mysrs%"=="4" && command /SRS/DPMS.BAT && map (fd0) (fd1) && map (fd1) (fd0)
  12. map --hook && set mysrs= && clear

  13. echo 1.加载/MYISO/FIRADISK.IMG到B盘
  14. echo 2.加载/HYTOOLS/GRUB/NTBOOT/NTBOOT.IMG/winvblk.img到B盘
  15. echo 3.加载/HYTOOLS/GRUB/NTBOOT/NTBOOT.IMG/vboot.img到B盘
  16. set /p /u mymd=请输入SRS驱动对应的数字并回车:
  17. find --set-root --ignore-floppies /MYISO/MYISO.TXT
  18. if /I "%mymd%"=="1" && if exist /MYISO/FIRADISK.IMG  && map --mem /MYISO/FIRADISK.IMG (fd1)
  19. if /I "%mymd%"=="2" && if exist /HYTOOLS/GRUB/NTBOOT/NTBOOT.IMG/winvblk.img && map --mem /HYTOOLS/GRUB/NTBOOT/NTBOOT.IMG/winvblk.img (fd1)
  20. if /I "%mymd%"=="3" && if exist /HYTOOLS/GRUB/NTBOOT/NTBOOT.IMG/vboot.img && map --mem /HYTOOLS/GRUB/NTBOOT/NTBOOT.IMG/vboot.img (fd1)
  21. map --hook && set mymd= && clear

  22. echo 1.复制/MYISO/WINXP.SIF到A盘和B盘
  23. echo 2.复制/MYISO/WIN2K3.SIF到A盘和B盘
  24. echo 3.复制/MYISO/WINNT.SIF到A盘和B盘
  25. set /p /u mysif=请输入SIF应答对应的数字并回车:
  26. if /I "%mysif%"=="1" && set mysif=WINXP.SIF || if /I "%mysif%"=="2" && set mysif=WIN2K3.SIF || if /I "%mysif%"=="3" && set mysif=WINNT.SIF
  27. find --set-root --ignore-floppies /MYISO/%mysif% && clear
  28. if exist /MYISO/%mysif% && fat copy /o /MYISO/%mysif% (fd0)/WINNT.SIF && fat copy /o /MYISO/%mysif% (fd1)/WINNT.SIF ! pause 没有加载自动应答文件%mysif%,任意键继续

  29. echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  30. echo FD0的驱动如下:
  31. ls (fd0)/
  32. echo -e \nFD1的驱动如下:
  33. ls (fd1)/
  34. echo -e \n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  35. set /p /u chab=是否交换的FD0和FD1?回车不交换,输入C交换:
  36. if /I "%chab%"=="C" && map (fd0) (fd1) && map (fd1) (fd0) && map --rehook
  37. set chab= && clear

  38. if not exit /MYISO/MYISO.TXT && set /p /u myisodir=请输入镜像文件目录(如/MYISO/): ! set myisodir=/MYISO/
  39. echo 0.进入命令行
  40. echo 1.生成/MYISO/或自定义目录的自动菜单(RUN模式SRATLF版)
  41. echo 2.生成/MYISO/或自定义目录的自动列表(RUN模式SRATLF版)
  42. echo 3.生成/MYISO/或自定义目录的自动菜单(RUN模式CHENALL版)
  43. echo 4.生成/MYISO/或自定义目录的自动列表(RUN模式CHENALL版)
  44. echo 5.生成/MYISO/或自定义目录的菜单列表(SISO模式)
  45. echo 6.一步安装/MYISO/MYISO.ISO(RUN模式SRATLF版,仅FIRA驱动)
  46. echo 7.一步安装/MYISO/MYISO.ISO(RUN模式CHENALL版,仅FIRA驱动)
  47. echo 8.一步安装/MYISO/MYISO.ISO(SISO模式,仅FIRA驱动)

  48. set /p /u myiso=请选择自动列表或菜单的方式:
  49. if "%myiso%"=="0" && commandline
  50. if "%myiso%"=="1" && RUNS --swap-ext --show.IMG.ISO %myisodir%
  51. if "%myiso%"=="2" && RUNS --swap-ext --autolist --show.IMG.ISO %myisodir%
  52. if "%myiso%"=="3" && run --set-ext=+.iso|.ima|.img|.gz|.bin|.wim|.|/ %myisodir%.automenu
  53. if "%myiso%"=="4" && run --set-ext=+.iso|.ima|.img|.gz|.bin|.wim|.|/ %myisodir%
  54. if "%myiso%"=="5" && siso iso=/MYISO/ srs=n sif=n 3
  55. if "%myiso%"=="6" && RUNS --swap /MYISO/MYISO.ISO
  56. if "%myiso%"=="7" && run /MYISO/MYISO.ISO
  57. if "%myiso%"=="8" && siso --swap iso=/MYISO/MYISO.ISO srs=n sif=n 3
  58. #把FIRA驱动写入注册表实现一步安装ISO,仅支持FIRA驱动
  59. #set iso=/MYISO/MYISO.ISO
  60. #cat --locatei=###### --number=1 (1)/TXTSETUP.OEM | set fk0= > nul
  61. #if not %fk0%#==# set /A fk0=0x%fk0% > nul
  62. #if not %fk0%#==# write --offset=%fk0% (1)/TXTSETUP.OEM value=Parameters,StartOptions,REG_SZ,"cdrom,vmem=find:%iso%;"\r\n > nul
  63. #if not %fk0%#==# cat --skip=%fk0% --locate=/ --replace=\\ (1)/TXTSETUP.OEM > nul

复制代码
回复

使用道具 举报

 楼主| 发表于 2012-4-16 14:04:10 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 13:52 发表
不太明白你说的使用环境,我使用的UD分区。
代码如下

fd2hd && clear
echo 1.加载自制SRS驱动/SRS/MYSRS.IMG到A盘(默认MYSRS.IMG为空白盘)
echo 2.加载自制SRS驱动/SRS/SRS.ISO到A盘(SRS无菜单版模式)
ec ...

找半天,没看到你处理txtsetup.oem的语句啊???
回复

使用道具 举报

发表于 2012-4-16 14:08:11 | 显示全部楼层
代码最后我注释调的部分,因为要测试你刚才的新SISO,所以我注释掉了。不好意思。
回复

使用道具 举报

 楼主| 发表于 2012-4-16 14:13:50 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 14:08 发表
代码最后我注释调的部分,因为要测试你刚才的新SISO,所以我注释掉了。不好意思。

这样写是没问题的啊!!看不出有什么问题


你应该在map --rehook后紧接那个处理的语句
因为只有map --rehook使fd1生效后才能对txtsetup.oem进行处理

[ 本帖最后由 527104427 于 2012-4-16 14:16 编辑 ]
回复

使用道具 举报

发表于 2012-4-16 14:23:25 | 显示全部楼层
因为FD1后还不知道加载哪个ISO,所以我没有写在map --rehook后,我修改下再测试下。

刚才用你的新版SISO模块,虽然SWAP参数对了,但是又发现两个问题:

1.fd0我原来加载的驱动已经不见了,变成我原来UD隐藏分区的内容了。这个我可能与我的U盘有关系。因为我的U盘被设备成了(ud)=(bd)=(fd0),可见分区识成(fd0,0),奇怪吧?很多东西在我的U盘里会出现奇奇怪怪的问题,如使用ls (fd0)后发现已经加载好的SRS驱动就变成UD分区的内容了。
2.进入系统安装后发现0x0000007b蓝屏,这个一般是没有找到合适的硬盘驱动所致,但是我的电脑DELL200是改为IDE模式,不需要SATA驱动测试的。我也进行了测试不用加载SRS也不会蓝屏。
回复

使用道具 举报

发表于 2012-4-16 14:26:55 | 显示全部楼层
我对我的U盘总结是:
1.不能事先使用fd2hd菜单调用
2.不能使用run img模块,否则会自动交换hd0和hd1从而产生13错误
3.在map前不要使用ls,否则镜像会无法加载到fd中
回复

使用道具 举报

 楼主| 发表于 2012-4-16 14:29:59 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 14:26 发表
我对我的U盘总结是:
1.不能事先使用fd2hd菜单调用
2.不能使用run img模块,否则会自动交换hd0和hd1从而产生13错误
3.在map前不要使用ls,否则镜像会无法加载到fd中
U盘被设备成了(ud)=(bd)=(fd0),可见分区识成(fd0,0)


我有一块联想的主板,也是这么折腾人的


关于第一个问题,SISO自动处理ZIP的情况,把你的fd0干掉了

第二个问题, 我的猜想是:因为SISO自动处理ZIP到hd0,然后你原来硬盘的顺序变成hd1、hd2……,如果没有交换磁盘,系统就装到了

hd1,所以重启就蓝屏了

[ 本帖最后由 527104427 于 2012-4-16 14:37 编辑 ]
回复

使用道具 举报

发表于 2012-4-16 14:37:27 | 显示全部楼层
我的电脑大部分都把我的U盘识别成上面的样子,虚拟机中测试和部分电脑又不会。所以有时搞的很头痛。
前几天搞哪个RUN也是,夜大为了适应我这个情况,改了很多东西,所以现在才能正常使用RUN
回复

使用道具 举报

发表于 2012-4-16 14:39:38 | 显示全部楼层
另外,在命令行下有没有命令可以看到TXTSETUP.OEM的内容,以便确定我已经成功把上面的代码写入了TXTSETUP.OEM
回复

使用道具 举报

发表于 2012-4-16 14:41:54 | 显示全部楼层
原帖由 <i>527104427</i> 于 2012-4-16 14:29 发表 <a href="http://bbs.wuyou.net/redirect.php?goto=findpost&pid=2423408&ptid=205934" target="_blank"><img src="http://bbs.wuyou.net/images/common/back.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open(this.src);}" onmousewheel="return imgzoom(this);" alt="" /></a><br />

<br />

<br />

<br />
我有一块联想的主板,也是这么折腾人的<br />
<br />
<br />
关于第一个问题,SISO自动处理ZIP的情况,把你的fd0干掉了<br />
<br />
第二个问题, 我的猜想是:因为SISO自动处理ZIP到hd0,然后你原来硬盘的顺序变成hd1、hd2……, ...
<br />


第二个问题,我测试了磁盘交换是OK的,也就U盘变成HD1了,原来的硬盘变成HD0了,应该还有其他问题。如果不弄成SRS=N SIF=N则没有这个问题,应该还是SRS=N参数出了什么问题。
回复

使用道具 举报

 楼主| 发表于 2012-4-16 14:42:00 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 14:39 发表
另外,在命令行下有没有命令可以看到TXTSETUP.OEM的内容,以便确定我已经成功把上面的代码写入了TXTSETUP.OEM


pager on

cat (1)/txtsetup.oem
回复

使用道具 举报

 楼主| 发表于 2012-4-16 14:45:51 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 14:41 发表



第二个问题,我测试了磁盘交换是OK的,也就U盘变成HD1了,原来的硬盘变成HD0了,应该还有其他问题。如果不弄成SRS=N SIF=N则没有这个问题,应该还是SRS=N参数出了什么问题。

SRS=N的时候有一个动作:创建一个空白的fd0,用于存放WINNT.SIF,

如果fd0内找不到WINNT.SIF或txtsetup.oem,则自动干掉fd0

有可能问题出在这了

[ 本帖最后由 527104427 于 2012-4-16 14:47 编辑 ]
回复

使用道具 举报

发表于 2012-4-16 14:48:06 | 显示全部楼层
我看了下命令使用CAT可以看到我的TXTSETUP最后一行改成了
value=Parameters,startoptions,REG_SZ,"cdrom,vmem=find:\MYISO\MYISO.ISO;"
不过后面还有很多###符号,
回复

使用道具 举报

 楼主| 发表于 2012-4-16 14:49:58 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 14:48 发表
我看了下命令使用CAT可以看到我的TXTSETUP最后一行改成了
value=Parameters,startoptions,REG_SZ,"cdrom,vmem=find:\MYISO\MYISO.ISO;"
不过后面还有很多###符号,

这样就成功了
回复

使用道具 举报

发表于 2012-4-16 14:51:59 | 显示全部楼层
原帖由 <i>527104427</i> 于 2012-4-16 14:45 发表 <a href="http://bbs.wuyou.net/redirect.php?goto=findpost&pid=2423417&ptid=205934" target="_blank"><img src="http://bbs.wuyou.net/images/common/back.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open(this.src);}" onmousewheel="return imgzoom(this);" alt="" /></a><br />

<br />
SRS=N的时候有一个动作:创建一个空白的fd0,用于存放WINNT.SIF,<br />
<br />
如果fd0内找不到WINNT.SIF或txtsetup.oem,则自动干掉fd0<br />
<br />
有可能问题出在这了
<br />


我预先已经加载了SRS和SIF驱动,是否可以增加变量值,如果srs=n sif则按照你现在得处理。如果srs=0 sif=0则完全不用管sif和srs
回复

使用道具 举报

发表于 2012-4-16 14:59:27 | 显示全部楼层
原帖由 <i>527104427</i> 于 2012-4-16 14:49 发表 <a href="http://bbs.wuyou.net/redirect.php?goto=findpost&pid=2423422&ptid=205934" target="_blank"><img src="http://bbs.wuyou.net/images/common/back.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open(this.src);}" onmousewheel="return imgzoom(this);" alt="" /></a><br />

<br />
这样就成功了
<br />


测试成功。安装时不提示插入CD了。
郁闷,放到后面就不行,可能后面的其他参数设置有影响。
回复

使用道具 举报

 楼主| 发表于 2012-4-16 15:09:31 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 14:51 发表



我预先已经加载了SRS和SIF驱动,是否可以增加变量值,如果srs=n sif则按照你现在得处理。如果srs=0 sif=0则完全不用管sif和srs

试试刚上传的   srs=0   sif=n
回复

使用道具 举报

发表于 2012-4-16 15:27:21 | 显示全部楼层
测试通过。
只是不知道老大是否也加个 fira=0的情况就不用管FD1中的fira驱动
回复

使用道具 举报

 楼主| 发表于 2012-4-16 15:32:13 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 15:27 发表
测试通过。
只是不知道老大是否也加个 fira=0的情况就不用管FD1中的fira驱动

可以吧,不过要晚点,我现在要忙去了
回复

使用道具 举报

发表于 2012-4-16 16:13:45 | 显示全部楼层
好的,非常感谢老大。感觉你的模块和S大的RUN模块非常不错。

再次感谢。
回复

使用道具 举报

 楼主| 发表于 2012-4-16 17:01:26 | 显示全部楼层
原帖由 HUNRYBECKY 于 2012-4-16 16:13 发表
好的,非常感谢老大。感觉你的模块和S大的RUN模块非常不错。

再次感谢。

试试刚上传的版本,去掉了srs=0这个参数,还是用原来的srs=n  sif=n
自动检测AB盘,如果存在,就不再处理,直接跳过
回复

使用道具 举报

发表于 2012-4-16 18:49:31 | 显示全部楼层
原帖由 <i>527104427</i> 于 2012-4-16 17:01 发表 <a href="http://bbs.wuyou.net/redirect.php?goto=findpost&pid=2423525&ptid=205934" target="_blank"><img src="http://bbs.wuyou.net/images/common/back.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open(this.src);}" onmousewheel="return imgzoom(this);" alt="" /></a><br />

<br />
试试刚上传的版本,去掉了srs=0这个参数,还是用原来的srs=n  sif=n<br />
自动检测AB盘,如果存在,就不再处理,直接跳过
<br />

测试通过,太感谢了。。。。。。。。。。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-18 18:18

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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