无忧启动论坛

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

[原创]支持外置硬盘控制器驱动,可任意方式启动的PE[10-01-13稳定版]

  [复制链接]
271#
 楼主| 发表于 2009-4-3 00:22:58 | 显示全部楼层
原帖由 zhaohj 于 2009-4-2 23:36 发表
这样说来,NV网卡驱动与BUS无关?
为什么用ID检测工具检测不到ID?虽然INF文件打开一看就明白。

ID检测工具检测不到ID????
如何检测不到?????

我传的那个是修改过的INF文件,可以使用吗?
回复

使用道具 举报

272#
 楼主| 发表于 2009-4-4 13:07:46 | 显示全部楼层
to zhaohj
注意看下前面安装驱动的过程,是安装失败还是没有找到驱动.

#1003
大部份都有注释啊(MICROPE.LST)需要解压出来.

menu.lst的注释.

  1. title
  2. #加载setupldr.bin到临时内存中.
  3. map --mem=0x8000 ()/WXPE/SETUPLDR.BIN (rd)
  4. #根据上面的选择修改setupldr.bin用于对应启动不同的配置文件.
  5. #下面的--offset也就是修改的地址,修改了TXTSETUP.SIF的I字符.
  6. #可以自己打开SETUPLDR.BIN查看(需先解压)
  7. checkrange 1 read 0x60100 && write --offset=0x2a50c (rd)+1 2
  8. checkrange 2 read 0x60100 && write --offset=0x2a50c (rd)+1 1
  9. #保存当前ROOT设备(一般也就是启动设备)
  10. dd if=(md) of=(md) bs=1 count=8 skip=0x829c seek=0x60110
  11. #查找并加载OEM_SCSI.IMG为(fd1)
  12. pause --wait=1 find /OEM_SCSI.IMG and load for Micro Windows PE
  13. find --set-root --ignore-floppies /OEM_SCSI.IMG && map --mem ()/OEM_SCSI.IMG (fd1)
  14. map --hook && pause --wait=1 Boot with /OEM_SCSI.IMG
  15. #还原ROOT设备.并加载SETUPLDR.BIN(前面加载到临时内存盘中的)
  16. dd if=(md) of=(md) bs=1 count=8 skip=0x60110 seek=0x829c && chainloader (rd)+1
  17. #指定启动设备,让SETUPLDR.BIN知道从哪里启动.如果不指定会出错.因为这个SETUPLDR.BIN是从内存盘中加载的.
  18. root ()
  19. pause --wait=0 Micro Windows PE Starting ......
复制代码
回复

使用道具 举报

273#
 楼主| 发表于 2009-4-4 23:24:09 | 显示全部楼层
原帖由 66369 于 2009-4-4 20:06 发表
LZ的研究.佩服.很感兴趣.

希望能放个现成的PE.让我等懒人直接体会下.

能YY的人不多.做研究的很少.都是拿来主义.

仅供参考.


现在就是现成的啊.
回复

使用道具 举报

274#
 楼主| 发表于 2009-4-5 00:08:19 | 显示全部楼层
原帖由 WLDNA 于 2009-4-4 23:29 发表
刚才转了下您的网盘,不知道这个是  安装64位2003.exe
在PE下安装64位的2003用的嘛?支持安装64位XP不?呵呵
谢谢

这里面的文件是从2003安装盘提取的.不知能不能安装XP,原理差不多.
如果不行,可以把文件替换成32位XP的文件,然后把里面的系列号改成XP的系列号应该也是一样的.
回复

使用道具 举报

275#
 楼主| 发表于 2009-4-5 00:32:09 | 显示全部楼层
有使用windows live mesh的朋友,如果想实时获得这个PE的最新版本可以留下你的live id

我将设置一个只读的共享文件夹.这样就可以实时更新了.省去每次下载的麻烦.

注:最多只能有200个共享名额.

如果有想一起完善外置程序的朋友也可以留下live id.我会另外设一个(可读写的共享),这样可以协同完善PE的外置程序.建议大家都加入^_^.共同更新PETOOLS.

如果有人想提供外置的共享也同样欢迎,这样就可以节省我自己的live mesh空间了.^_^

要留live id请直接pm我.
或到我的主页留言.
回复

使用道具 举报

276#
 楼主| 发表于 2009-4-8 08:01:30 | 显示全部楼层
#1013
如果进入PE后,直接使用启动完整网络模式是没有问题的,但如果先用基本,然后再启动就会有问题,具体原因未知.
#1014
这是自然的,live mesh只是方便部份人及时更新(因为它有200人的限制)
有比较大的更新会传到网络硬盘上.小更新就不传了.

#1015
可能这时网络还没有通吧,应该不会这样子啊.我再看看NET.WIM组件看会不会有什么其它的问题.
网络映射要等服务器有通才会开始映射的.
回复

使用道具 举报

277#
 楼主| 发表于 2009-4-8 13:54:55 | 显示全部楼层
新的NET.WIM已经解决了先启动基本网络再启动PPPOE的问题.

并且只复制了两个文件到SYSTEM32目录下,之前需要复制多个,经过调整修改注册表和INF文件后,只需复制必须的两个文件MSWSOCK.DLL和NETCHFX.DLL其它的都不需要复制就可以使用,这样可以节省X盘空间.
回复

使用道具 举报

278#
 楼主| 发表于 2009-4-8 13:55:30 | 显示全部楼层
原帖由 xhwfq 于 2009-4-8 09:26 发表
start_net pppoe 出错的问题解决,只要将ras*.dll,和tapisrv.dll拷入system32即可。
但又出现一个新问题:netsh命令不能使用,显示"不能从机器得到主机信息..."

netsh的问题也解决,只要将ifmon.dll拷入sys ...


我晚来了一步,呵呵.NETSH我还没有用过.谢谢提供信息.
回复

使用道具 举报

279#
 楼主| 发表于 2009-4-8 14:23:28 | 显示全部楼层
2009-04-08
*NET.WIM添加了7ZA.EXE程序,用于解决PECMD有时不能正常解压CAB文件的问题(有时候PECMD DEVI只解压出INF文件,SYS文件没有解压)
新的处理方式,如果X:\DRIVERS目录下有驱动文件就直接用7ZA.EXE解压.而不使用PECMD DEVI.
.NET.WIM优化调整,并解决了一个历史遗留的问题(当使用基本模式启动网络后,再启动PPPOE等会失败的问题)

*WINPE.IMG 修正了一个语法错误(影响不大),顺便更新了一下PECMD.EXE到V3.3.328.290版

2009-04-07
*MICROPE.LST加入了查找/BOOT/MICROPE.ISO功能.如果在启动ROOT /WXPE/WINPE.IMG文件不存在,就全盘查找/BOOT/MICROPE.ISO

2009-04-05
*OEM_SRS.ZIP充許使用非F6軟盤格式.
如果发现OEM_SRS.ZIP里面没有TXTSETUP.OEM就把这个驱动包带的驱动内置到PE中.
这样可以方便定制本机的SRS驱动.除了一些特殊的,大部份驱动都只需要一个SYS文件和一个TXTSETUP.SIF.
只要把驱动文件打包成OEM_SRS.ZIP放在磁盘根目录下即可自动调用.
最理想的状态下,这个驱动包里面可以只包含一个驱动SYS或sy_文件.(TXTSETUP.SIF自动生成,不会自动添加驱动ID,所以某些可能会驱动不了)

2009-04-03
*给DOS下的TFTP程序使用的TCP.CFG添加了一个网关,也许可以解决跨网段PXE启动的问题(未测试)

新的版本文件正在上传,稍后可以到http://brsbox.chenall.com中下载
MicroPE0408_无外置.rar
回复

使用道具 举报

280#
 楼主| 发表于 2009-4-8 22:35:53 | 显示全部楼层
原帖由 adatsui 于 2009-4-8 21:56 发表
chenall
甚麼叫跨網段. 是指不同的 gateway 嗎 ?


比如启动IP是192.168.0.100/24,而服务器IP是192.168.100.100/24.这时就跨网段了,需要使用网关.

一般情况下使用DHCP代理的时候会使用,我这里没有使用跨网段.所以没有试.
回复

使用道具 举报

281#
 楼主| 发表于 2009-4-9 21:34:53 | 显示全部楼层
原帖由 zhaohj 于 2009-4-9 18:05 发表
上面的关键还是网卡驱动,这个NV网卡真难办啊,PXE启动到现在还无法解决。希望有NV网卡的大家想想办法。


请试下新版的,并把开机时的安装驱动截图传上来看下.前面的截图都没有看到安装驱动的过程.
还有进入PE后把X:\TEM目录里面的一个文件好像是SETUPPAI.LOG也打包上来.
回复

使用道具 举报

282#
 楼主| 发表于 2009-4-10 10:14:17 | 显示全部楼层
新版的启动到PE后会自动删除X:\DRIVERS里面的驱动.看截图是正常的,你再试下我今天上传的版本.看能不能驱动.
回复

使用道具 举报

283#
 楼主| 发表于 2009-4-10 10:27:09 | 显示全部楼层
再看了下,这个驱动是我修改过的那个,按图片看是安装成功的.
应该可以使用,如果不行可能不能这样子用,可以试试使用原版的驱动
制作驱动包时需要
复制bdco1.dll为bdco1ins.dll
复制fdco1.dl为fdco1ins.dl
然后使用新版的测试下.
回复

使用道具 举报

284#
 楼主| 发表于 2009-4-10 10:50:56 | 显示全部楼层
要使用原版的NV驱动,看这个应该是使用我修改过的驱动.
回复

使用道具 举报

285#
 楼主| 发表于 2009-4-10 11:58:26 | 显示全部楼层
加到NET中了,谢谢
回复

使用道具 举报

286#
 楼主| 发表于 2009-4-10 12:13:16 | 显示全部楼层
原帖由 zhaohj 于 2009-4-10 11:24 发表
终于解决了PXE启动NV网卡驱动的问题,PXE的又一大进步!!!


有空的话麻烦测一下新版的ISO启动看看是否正常.新版使用FILEDISK来挂载ISO文件.避免使用ISODRIVE和ULTRAISO的挂载功能冲突的问题.

并且新版的增加了一个功能,目前还没有做到自动化.

自动定位启动ISO文件,比如你的电脑上C:\BOOT里面有MICROPE.ISO.D:\BOOT里面也有MICROPE.ISO.

你使用C:\BOOT\MICROPE.ISO启动时会挂载C:\BOOT\MICROPE.ISO.
使用D:\BOOT\MICROPE.ISO启动时的会挂载D:\BOOT\MICROPE.ISO.而不会挂载C:\BOOT\MICROPE.ISO.

这个功能必须配合GRUB4DOS实现,有空的话麻烦测试一下,目前这个功能WINPE.IMG已经处理好了.
这样可以避免一些可能出现的问题,比如使用U盘的ISO文件启动,硬盘上也有存在时,启动时会自动挂载U盘上的ISO文件.而不挂载硬盘上的.

启动例子.(必须使用最新版GRUB4DOS.也就是0.4.4正式版)
1.自己编写启动菜单
  1. title Micrope.iso
  2. find --set-root /boot/MicroPE.ISO
  3. #保存ISO文件所在分区号(用于进入PE后确定使用的ISO文件磁盘,因为有可能有多处存在)
  4. cat --length=0 (0xff)/MINIPE/EXT.ZIP && dd if=(md) of=(md) bs=1 count=4 skip=0x829c seek=0x603fc
  5. map /boot/MicroPE.ISO (0xff) || map --mem /boot/MicroPE.ISO (0xff)
  6. map --hook
  7. configfile (0xff)/menu.lst
复制代码
2.直接使用自带的MICROPE.LST文件.(使用ISO启动时这个文件可以直接使用GRUB调用来启动)
title Micrope
configfile /micrope.lst
这个MICROPE.LST可以不必放在WXPE目录下,在哪个地方都可以,它会自动处理,自动查找ISO文件来启动.
回复

使用道具 举报

287#
 楼主| 发表于 2009-4-10 14:51:43 | 显示全部楼层
原帖由 zhaohj 于 2009-4-10 13:45 发表


打狗版主啊,我这个测试员还及格吧!建议版主再开一个帖子,招募PE讨论区测试员,要求测试员是企业级的网管,实话说我单位300多台机器,NV主板及NV网卡的就2、3台,说明测试的重要,因为无忧高手众多,但懒 ...


同样感谢你们的测试和支持.否则我自己也做不了那么多...
回复

使用道具 举报

288#
 楼主| 发表于 2009-4-10 17:18:47 | 显示全部楼层
原帖由 zhaohj 于 2009-4-10 16:49 发表


我用第二种方法测试了一下:
1:C盘、D盘BOOT下都有MICROPE.ISO,都能顺利启动。但这时我不知道是启动哪个ISO?
2:只有D盘下BOOT\MICROPE.ISO,也能启动。


如果直接使用上面的菜单启动,一般会是使用C:的.进入PE后在CMD中输入
set iso
就可以看到使用的ISO文件了.

但是目前的处理办法还不是最好的,还可能会出现PE加载的ISO和启动ISO不同的情况,不过一般比较少用.等找到比较好的办法再改.

下一次更改会再加一个功能.

根据文件大小对比,如果这个ISO和启动的ISO文件大小一样才使用,这样基本上就可以确定了.
回复

使用道具 举报

289#
 楼主| 发表于 2009-4-10 17:19:28 | 显示全部楼层
原帖由 xhwfq 于 2009-4-10 16:29 发表
希望chenall兄发布新版时注意:
”本地连接 属性“有问题,将xpsp2res.dll拷入system32即可解决。


谢谢提醒,因为很少用到这个所以没有注意,下次改正.
回复

使用道具 举报

290#
 楼主| 发表于 2009-4-11 13:37:19 | 显示全部楼层
用户名最好使用username@domain的格式.
比如你服务器的计算机名是Server1
用户名pseudo
就使用pseudo@Server1
回复

使用道具 举报

291#
 楼主| 发表于 2009-4-12 18:32:39 | 显示全部楼层
原帖由 zhaohj 于 2009-4-11 15:10 发表
新版本PXE启动,在进桌面后出现:
但不影响使用


我这里没有发现问题,应该是你有加了自动运行的组件,并且采用INF安装的形式.没有删除注册表RUNONCE键值所引起的.
回复

使用道具 举报

292#
 楼主| 发表于 2009-4-13 16:39:51 | 显示全部楼层
原帖由 zhaohj 于 2009-4-13 08:30 发表


经测试,是AUTORUNS下hanwindhcp.wim组件引起的。呵呵,放在PETOOLS下就可!


应该 不是这个原因吧.肯定有其它的原因.
回复

使用道具 举报

293#
 楼主| 发表于 2009-4-13 21:50:27 | 显示全部楼层
原帖由 zhaohj 于 2009-4-13 17:14 发表


要不就是那个ISCSI客户端,其他都不会出现。以前老版本是没有这个提示的

只要在安装完成后删除RUNONCE注册表键值就不会了.
回复

使用道具 举报

294#
 楼主| 发表于 2009-4-14 00:29:55 | 显示全部楼层
原帖由 pseudo 于 2009-4-14 00:00 发表

好的,下次更新把12个字节一并取出。

我现在使用另一种方式处理.

现在是直接写入到另一个专用文件中
进入DOS后通过STR改变PXEIP.COM的内容来得到PXE_SIP,PXE_YIP,PXE_YIP的值.现在只使用一个COM文件.
回复

使用道具 举报

295#
 楼主| 发表于 2009-4-14 15:50:10 | 显示全部楼层
在;goto :eof前面加上两句.
;REG DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /va /f
;REG DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /va /f
回复

使用道具 举报

296#
 楼主| 发表于 2009-4-14 19:55:40 | 显示全部楼层
要加在goto :eof前面,如果是放在后面是没有用的.
也可以放在rundll32语句后面.
也就是使用INF安装以后执行.
回复

使用道具 举报

297#
 楼主| 发表于 2009-4-15 17:41:32 | 显示全部楼层
我直接收下了,按照上面的修改,自己懒得动手.嘿嘿.
回复

使用道具 举报

298#
 楼主| 发表于 2009-4-16 00:10:06 | 显示全部楼层
能不能把你的整个SRS目录传一份给我?可以给我一个下载地址,或直接用邮件发给我.
回复

使用道具 举报

299#
 楼主| 发表于 2009-4-16 13:14:44 | 显示全部楼层
在工具与说明目录下有一个.批处理写的.
SRS驱动自动分类辅助
不太成熟.

更好的解决方法是让jianliulin 改进TXTSETUP.SIF 编辑工具让它分类后自动导出.呵呵.
回复

使用道具 举报

300#
 楼主| 发表于 2009-4-16 14:15:21 | 显示全部楼层
原帖由 zhaohj 于 2009-4-16 13:20 发表
PXE启动,这个SRS目录下每个驱动能不能不打包处理,方便驱动更新。目前这个SRS目录下缺少太多驱动,常见的PCIIDE、pciidex也没有。
如果能不打包处理,以后真的方便了,读SCSI.PCI(或这里是TXTSETUP.SIF),找 ...


不打包处理,理论上也是有办法做到的,不过这种方式只能处理一些普通的驱动.一些特殊的就不好办了.
普通的驱动,就是像VMSCSI之类的,只有一个SYS文件.只要下载并加载这个SYS文件就可以了.
特殊的,像NV/VIA之类的,需要的文件并不止一个,我对这些驱动加载还不是很了解.

有空的话我再考虑加这个功能进去,算是一个备用方案吧,只是理论上可行,不知实现起来如何..^_^
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-25 16:50

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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