无忧启动论坛

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

[原创][突破]在WINPE下安装硬盘控制器驱动

[复制链接]
跳转到指定楼层
1#
发表于 2008-12-14 14:57:04 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
一直以后在PE下安装硬盘控制器驱动都是失败的,因为都是使用DEVCON类.

由我之前发的贴子[原创]让你的PE/XP/2003系统支持EXFAT.

我突然想到,SCSI驱动是不是也可以使用类似的方法呢,实验证明我的想法有一定的可行性(因无条件进行全面测试)

具体安装方法.
1.把这个驱动的SYS文件复制到DRIVERS目录,其它文件复制到(不需要INF文件)SYSTEM32.
注:一般都是只有一个SYS文件的所以只要把这个SYS文件复制到DRIVERS目录就好了.
2.把这个SYS文件设为服务并启动.

3.好了,如果服务正常启动,那系统中就会显示出你的SCSI硬盘.

附上测试效果图.使用VMSARE测试..附件4为下面批处理脚本,可在PE下使用,
注:测试图由于为了方便我是直接使用VCdControlTool加载的驱动.正常使用可以直接使用下面的脚本

我的搏客相关文章:
http://www.366840202.cn/blog/view.asp?id=39


  • @echo off
  • title 在PE下安装硬盘控制器驱动简单脚本 by chenall 2008-12-14
  • rem 使用方法: 1.可直接拖放,即把对应驱动的SYS文件拖放到这个程序的图标上.
  • rem  2.使用命令行pe_scsi.cmd [你的SYS文件]
  • rem ....http://www.366840202.cn................[url=http://bbs.wuyou.net.........]http://bbs.wuyou.net.........[/url]
  • rem ...
  • if "%1"=="" goto :eof
  • >"%temp%\scsi_serv.inf" echo.
  • >>"%temp%\scsi_serv.inf" echo.[Version]
  • >>"%temp%\scsi_serv.inf" echo.signature = "$Windows NT$"
  • >>"%temp%\scsi_serv.inf" echo.[DefaultInstall.Services]
  • >>"%temp%\scsi_serv.inf" echo.AddService = %~n1,,Service
  • >>"%temp%\scsi_serv.inf" echo.[Service]
  • >>"%temp%\scsi_serv.inf" echo.DisplayName = "%~n1 Service"
  • >>"%temp%\scsi_serv.inf" echo.Description = "%~1"
  • >>"%temp%\scsi_serv.inf" echo.ServiceType = 2
  • >>"%temp%\scsi_serv.inf" echo.StartType = 2
  • >>"%temp%\scsi_serv.inf" echo.ErrorControl = 1
  • >>"%temp%\scsi_serv.inf" echo.ServiceBinary = %%12%%\%~nx1
  • copy /y %1 %WinDir%\system32\drivers >nul
  • rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 %temp%\scsi_serv.inf
  • if not errorlevel 1 (echo.%~nX1驱动安装成功!&pecmd serv %~n1&pause) else (echo.安装失败!&pause)
  • del /f /q "%temp%\scsi_serv.inf"
chenall 发表于:  2008-12-14  14:56

[ 本帖最后由 chenall 于 2008-12-15 17:01 编辑 ]

0.JPG (106.17 KB, 下载次数: 170)

0.JPG

1.JPG (92.7 KB, 下载次数: 169)

1.JPG

2.JPG (94.27 KB, 下载次数: 167)

2.JPG

PE_SCSI.rar

687 Bytes, 下载次数: 501, 下载积分: 无忧币 -2

65#
发表于 2014-9-29 08:45:58 | 只看该作者
这个可以有。
回复

使用道具 举报

64#
发表于 2008-12-18 12:05:38 | 只看该作者
我仔细分析了一下.按照adatsui 的说法.不需要楼主的方法他都可以直接加载SCSI驱动.条件就是必须使用老版本的PECMD,现在我们不谈论adatsui方法的可行性...好吗.在争执下去就没有意义了.我只想知道除了adatsui 还有哪位朋友,使用新的PECMD版(没有FBWF和BARTPE的内核)在不能识别硬盘的PE版本中,通过楼主的方法成功加载了硬盘控制器驱动,从而识别了硬盘(成功加载就是用PM或PQ成功读取分区表).我们要求的是简易性和通用性..

[ 本帖最后由 wsw8810 于 2008-12-18 12:30 编辑 ]
回复

使用道具 举报

63#
发表于 2008-12-18 11:01:05 | 只看该作者
祝贺一下.有希望最好.少数需手动的.用批处理也行.

盼望早出成果.
回复

使用道具 举报

62#
发表于 2008-12-18 10:06:23 | 只看该作者
成了,  自動安裝使用 HWPNP.EXE -ALL +PCI\VEN 便成, 毋需人手介入.
但2個連帶的驅動 IBM_SAS_SES_Device, LSI Pseudo Devide 則要手動. 使用另一 inf 文件 lsipseud.inf (這驅動有2個 inf 文件). 也許別的卡的驅動不是這樣.

現在除了 hwpnp 外, 還有2個方法是可以進入pe後安裝scsi的.
2. BARTPE -PNP
3. 全手動.
2, 3 沒法達到全自動的要求.

_SAS_06.gif (77.73 KB, 下载次数: 96)

_SAS_06.gif
回复

使用道具 举报

61#
发表于 2008-12-18 01:05:48 | 只看该作者

回复 #59 adatsui 的帖子

回复

使用道具 举报

60#
发表于 2008-12-18 00:38:16 | 只看该作者
原帖由 netwinxp 于 2008-12-18 00:22 发表

因为disk.sy_在载入内存后,毛桃的PE删除了disk.sy_所以会导致找不到disk.sys(其实ISO内核删除文件根本不会释放内存空间,删除文件根本就是多此一举,不仅一点好处没有,而且还可能导致某些BUG产生。)


我用的 PE 是自已用 pebuilder 建的,  disk.sys 或\drivers 內的所有 sys 均沒壓縮, 這做法對我沒用, 啟動FBWF前存在的文件, 在 FBWF 的 PE 上我也覺得刪了不會空出空間. 無盤天使硬盤鏡像的刪了才會放出空間,
我現在都用這方式, 內核格式是 NTFS compress , 所以我也不壓縮, 也難得遇上小於2G的機,我也沒刪 .sys 的習慣.

秒後試 pseudo 新點子時, 我試著放多1個 壓縮的, 看會不會再提示要抄. (disk.sys, disk.sy_ 都放一 個在 \drivers)
回复

使用道具 举报

59#
发表于 2008-12-18 00:27:33 | 只看该作者
pesudo
給個連結好嗎 ? 試試你的batch, 哪個再抄一次 drive.sys 的提示實在可恨.

這個 “xp资源”是採用 找ID, 抄sys, inf + infcachebuild + bartpe.exe -pnp 嗎 ? 如果是哪肯定是成功的, 只是多了個提示要按, 變成不能全自動化.
回复

使用道具 举报

58#
发表于 2008-12-18 00:22:41 | 只看该作者
原帖由 adatsui 于 2008-12-17 20:39 发表
symmpi.inf 在附件, 請查收.
用 PE_SCSI.rar 我仍未能成功, 可以肯定的是, 啟動 PE 後不論是手動加載, bartpe -pnp加載也是成功的, 遺憾的是仍做不到全自動.  
究竟 bartpe - pnp 是怎麼加載這 ...

因为disk.sy_在载入内存后,毛桃的PE删除了disk.sy_所以会导致找不到disk.sys(其实ISO内核删除文件根本不会释放内存空间,删除文件根本就是多此一举,不仅一点好处没有,而且还可能导致某些BUG产生。)
我的那个驱动帖子已经比较清楚地说明了多层次的驱动,先是文件系统有一个驱动(如NTFS.SYS),然后分区驱动、磁盘驱动(比如disk.sys、nvrd32.sys等)、port或CHANNEL驱动、BUS(IDE、SCSI、SATA、SAS等)、磁盘控制器驱动,最后磁盘控制器驱动通过系统总线驱动(ISA、PCI、PCIE、PCI-X等)连到CPU和DMA控制器(HT总线相对于系统总线是透明的不需要驱动)。
PS:其实文件系统驱动、分区驱动只是参与计算位置,照理不算真正的硬件驱动。ATA指令和数据包只在后面的几层传递。
PS:PE不会自动分配的另一个原因是,很多文件被精简,Logical Disk Manager和Plug and Play服务没有启动,你可以44 MMC内置看能不能行。

[ 本帖最后由 netwinxp 于 2008-12-18 00:51 编辑 ]
回复

使用道具 举报

57#
发表于 2008-12-18 00:15:23 | 只看该作者

回复 #54 adatsui 的帖子

想起个办法
如果硬盘装有xp,使用带“xp资源”的pe,其中有个安装“指定驱动”的功能,也许能自动安装symmpi.inf。需指定驱动的类型为SCSIAdapter。
不过这个功能从来没人用过,而且你那里就算有xp也是繁体的,只有3成希望。
回复

使用道具 举报

56#
发表于 2008-12-17 21:33:54 | 只看该作者
认真学习了,看来还要多思考才成.
回复

使用道具 举报

55#
发表于 2008-12-17 21:21:18 | 只看该作者
板主
對的, vmm.sys, vdd-x86.sys 是虛擬設備, 我只是回應另一說法, 這個...不說也罷, 反正是沒能給進PE後自動載SCSI驅動解決問題.
HWID 我是不懂, 也沒有發表過任何意見. 板主是否在 pesudo 的另一 帖內其他人的回帖, 與我搞混了?
mounting volume 後的磁盤不會自動分配盤符, 這解釋了為何移動硬盤在進PE後插上沒盤待, 謝謝.
DefineDosDevice() 可以解決, 這又要謝謝板主, PECMD Show 會是調用這功能 ?
這 winapi 我不懂編程, 用不了, 剛找到替代品 dosdev.exe http://blogs.msdn.com/adioltean/archive/2005/10/04/477164.aspx (在此做個記號)

板主對硬體, 驅動認識深是毋庸置疑的, 哪再請教,  進 PE 後插入 USB 外置硬盤. 在磁盤管理派盤符好像是沒效果. 但在 cmd prompt 卻可以用該盤符讀取. 而 IE 地址欄也可以用該盤符讀取, 甚至開啟文件對話框也可讀取該盤符, 只是檔案管理看不見該盤符, 這是何理由?
回复

使用道具 举报

54#
发表于 2008-12-17 20:39:28 | 只看该作者
symmpi.inf 在附件, 請查收.

用 PE_SCSI.rar 我仍未能成功, 可以肯定的是, 啟動 PE 後不論是手動加載, bartpe -pnp加載也是成功的, 遺憾的是仍做不到全自動.  

究竟 bartpe - pnp 是怎麼加載這些驅動的呢, 不知道, 這點我也很想知.  現在我們即使加載網卡, 還是得依賴 bartpe.exe (微軟提供相應功能的, 是否 factory.exe?) .

現在最令人疑惑的是, 為何以 bartpe -pnp , 會彈出找 disk.sys 的提示? 解決得了這點, 自動安裝才算成功.  也許到911問問, 但這做法(外置驅動), 還沒人在哪邊提及過. ......

lsi_inf.rar

2.39 KB, 下载次数: 89, 下载积分: 无忧币 -2

此驅動包括2個 inf 文件

回复

使用道具 举报

53#
发表于 2008-12-17 19:50:56 | 只看该作者
那SATA2的怎么弄啊?期待ing
回复

使用道具 举报

52#
发表于 2008-12-17 19:21:35 | 只看该作者
只是热插拨还不行.应该是热插拨+即插即用,跟USB通用串行接口一样了..所以在理论上是行不通的...总线设备都能跟USB设备一样了.确实让人无法理解了.HEHE
回复

使用道具 举报

51#
发表于 2008-12-17 18:44:46 | 只看该作者
原帖由 adatsui 于 2008-12-16 21:41 发表
我是菜鳥, 請大家看看我 #23 樓 貼出的圖, 算不算 "進入WINPE 後才加載硬盤驅動成功"  ??
我 #23 樓 貼出的圖, 就是在實機 IBM X3200 上進行的, 圖示 LSI Adapter, SAS 3000 series, 4-port with 1064E 是給 ...

vmm.sys, vdd-x86.sys这些是虚拟设备,并不会有专门的HWID,它的虚拟HWID本身就是服务程序创建的,所以只要开应用程序就会用上,而硬件的驱动则要通过hwid来使用服务进程,如果没有hwid如何和对应的服务进程交流?所谓的不需要hwid也可用只不过是你用来制作PE的xp曾经集成过该驱动在注册表留下了“印迹”而已。
对于非启动设备的磁盘控制器理论上也可以通过类似网卡的方式加载,不过因为它在系统mounting Volume到盘符之后,所以应该不会自动分配盘符,要通过DefineDosDevice()函数给它的分区分配盘符(对于支持热拔插的移动盘、esata、sata可能不需要)。
回复

使用道具 举报

50#
发表于 2008-12-17 17:30:13 | 只看该作者
原帖由 pseudo 于 2008-12-17 13:05 发表
ls不妨试试chenall的pe,或者我发的0pe,附件是dell某版本的symmpi驱动。

谢谢了.这个驱动我集成了的.40MB的无限扩展PE.也就是NETWINXP做的驱动哪版.我也下载了,几乎无优发布的PE,我都有备份.遇到困难的时候可以拿来做对比.现在让我郁闷的是,我又换了一个无法识别硬盘的PE版本.现在连设备管理器中黄问号都没有了.直接把我的硬盘给KILL掉了..叫我怎么加载外置驱动啊...看样子,只有等其它人测试成功了在分享一下经验了.
回复

使用道具 举报

49#
 楼主| 发表于 2008-12-17 15:45:27 | 只看该作者
#47
用PECMD SHOW显示不出来并不代表不成功,测试驱动有没有加载成功可以用一个磁盘管理软件就可以看到了.

#46
有可能的话可以把INF文件传上来,也许可以看出问题..

还有一点.磁盘驱动的INF,如果是直接使用RUNDLL来安装磁盘驱动的INF文件,服务可能无法正常启动.可以尝试把INF里面对应的服务的值如下,原来是1改成2或许就可以了.
ServiceType=0X01
StartType=0
回复

使用道具 举报

48#
发表于 2008-12-17 13:05:45 | 只看该作者

回复 #47 wsw8810 的帖子

ls不妨试试chenall的pe,或者我发的0pe,附件是dell某版本的symmpi驱动。

to-wsw8810-SCSI.rar

54.39 KB, 下载次数: 96, 下载积分: 无忧币 -2

回复

使用道具 举报

47#
发表于 2008-12-17 11:34:46 | 只看该作者
原帖由 adatsui 于 2008-12-17 06:40 发表
Chenall
剛又做了實驗, 如下.

執行 rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 U:\lsi\symmpi.inf
或預先把 symmpi.inf, lsipseud.inf, symmpi.sys 抄到 x:\i386 相應地方, 雖回報成功 ...


用外置安装设备驱动的方法是可行的.这是不争的事实.关键就在于外置SCSI驱动,我反复试了都没成功.我用"开始懂了"自己做的PE.直接进入就能识别硬盘(因为内核集成了驱动),用左木崖的PE识别不了SATA硬盘,照着Chenall的方法把SYS秒到CMD批处理里.检查了服务和SYSTEM32/DERIVE目录,一切成功.用了PECMD SHOW也无济于事.还望指教! 确实我找不出问题出在哪里.难道是PE内核版本的不同? 除了adatsui 还有哪位朋友使用Chenall的方法成功加载了SCSI硬盘的,请指教一下...
回复

使用道具 举报

46#
发表于 2008-12-17 06:40:52 | 只看该作者
Chenall
剛又做了實驗, 如下.

執行 rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 U:\lsi\symmpi.inf
或預先把 symmpi.inf, lsipseud.inf, symmpi.sys 抄到 x:\i386 相應地方, 雖回報成功, 但實際上不見 SCSI 設備.
* 這驅動有2個inf , lsipseud.inf 我不知是否必須, 也抄了它.

但為何 手動執行 更新硬件, 卻是成功呢 ?

再試. 這次是用安裝網卡的方法.
把 symmpi.sys, symmpi.inf, lsipseud.inf 抄到 X:\i386 相應地方.
執行 infcachebuild, 這是第2次了, 我的 PE 在啟動時已執行了一次安裝網卡, 也打開 symmpi.inf 看, copyfile 已被更改.
執行 bartpe -pnp
彈出指定 disk.sys 位置的視窗, 按 OK 便完 (也有一次是要指定該文件所在 x:\i386\system32\drivers).
** 這個文件早已在了, 否則也讀不了任何磁盤(是嗎?), 為何又跑出來要再一次抄這文件. 如果不是這一步, cmd line 自動安裝算是成功了, 現要按一次由要求 disk.sys帶來的 OK 鍵.

SCSI 設備在 裝置管理跑出來了.

用 pecmd show 盤符也分配了, 試了讀寫, 新建文件皆沒問題.
回复

使用道具 举报

45#
发表于 2008-12-17 00:30:17 | 只看该作者
最初測試 PE_SCSI.rar , 不成功, 所以有感嘆號.
再接著 (沒重啟PE) 使用 傳統的更新硬件方式便成了.  貼圖見用win自帶的磁盤管理便見到分區了, 沒必要用PQ.
這做法在 帶 FBWF 的PE上做, 一向是不需要重啟的.
SATA 我沒試, 我試的是 SISI. 現在的機都是 SATA , 但我沒碰過要驅動才讀取得了的. 雖然聽聞有些主板要驅動才成, 但就是沒遇過. 沒得試.
內核我一向不提供, 只提供做法. 用的是peubilder + XPE plubin 做出來的 PE, 版本號不重要, 任何人做出來都是一樣的, 都是基本功能.
倒數第二圖確是這樣, 我未按 完成鍵, 但裝置管理已更新了, SCSI 設備也沒感嘆號.  (也許是 安裝的不夠完美吧. 完裝精靈還沒去掉感嘆號)


我還是會再試 Chenall 的新方法, 上次沒抄下 setupapi.log 看看有沒有用信息.

*** 測試的是 IBM X3200 不是 Dell 的服務器, 上帖已說明.
回复

使用道具 举报

44#
发表于 2008-12-16 23:35:44 | 只看该作者
adatsui 的贴图中,倒数第二张.在安装完驱动后,点击"完成"按钮这个画面,明明还是黄问号,为什么在设备管理器中就没有问号了呢???难道是我的错觉....
回复

使用道具 举报

43#
发表于 2008-12-16 23:16:22 | 只看该作者
原帖由 adatsui 于 2008-12-16 21:41 发表
我是菜鳥, 請大家看看我 #23 樓 貼出的圖, 算不算 "進入WINPE 後才加載硬盤驅動成功"  ??

我 #23 樓 貼出的圖, 就是在實機 IBM X3200 上進行的, 圖示 LSI Adapter, SAS 3000 series, 4-port with 1064E 是給 ...


从你的图中看出,加载驱动是成功的.我没猜错的话,你应该是DELL的服务器吧.加载后能否在NTFS分区新建文件或者使用PQ类的软件查看分区表..没道理啊.SAS硬盘你能在PE不重启的情况下,加载SAS驱动识别分区.有点想不通哦..我自己也做了测试.三星的SATA硬盘,在不能识别的PE中,使用此方法.却不能正常识别...能不能提供一下你的繁体版PE内核文件...
回复

使用道具 举报

42#
 楼主| 发表于 2008-12-16 21:56:15 | 只看该作者
谢谢adatsui 的测试.

当然了这个方法也只能是在某些特殊情况下应急使用,并不是说这样子加载更好用.
不管用什么方式,能用就好,不是吗,而且各有优点,可以选择最适合的方式.

事事无绝对,一切皆有可能.
回复

使用道具 举报

41#
发表于 2008-12-16 21:41:11 | 只看该作者
我是菜鳥, 請大家看看我 #23 樓 貼出的圖, 算不算 "進入WINPE 後才加載硬盤驅動成功"  ??

我 #23 樓 貼出的圖, 就是在實機 IBM X3200 上進行的, 圖示 LSI Adapter, SAS 3000 series, 4-port with 1064E 是給我在進入 WINPE 後加載了, 也看見 SCSI 盤, 資料也可正確讀取.

大家普遍用到的 vmm.sys, vdd-x86.sys, 網卡的驅動也是 .sys, 顯卡驅動也是 .sys, 這些算是 "驱动级" 嗎, 大家不都是在進入了 WINPE 才加載嗎? 不會有人加載不了吧 ??
回复

使用道具 举报

40#
发表于 2008-12-16 19:17:32 | 只看该作者
是PE.IMG压缩后的文件
回复

使用道具 举报

39#
发表于 2008-12-16 18:44:23 | 只看该作者
PE.IM_是什么文件
回复

使用道具 举报

38#
发表于 2008-12-16 17:25:42 | 只看该作者
原帖由 cscz 于 2008-12-16 16:41 发表
你的PE是什么版本的啊,我把我的PE和相关文件发给。看来还是要加进内核里。我看了不少的PE,发现有的是用PE.IS_ 有的是用PE.IM_,不知这两种PE是什么类型 ,怎么联系你呢?


直接发在贴子上.或者你新建一个帖子,上传成附件形式.PE内核跟老毛桃911框架一样的.WINPE.IS_为内核文件,通用.也方便其它网友DIY
回复

使用道具 举报

37#
发表于 2008-12-16 16:56:02 | 只看该作者
好东西,支持一下!学习了,收藏
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-17 00:41

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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