无忧启动论坛

标题: Windows XP 3N1的SATA驱动加载问题 [打印本页]

作者: jh1688    时间: 2013-6-19 19:42
标题: Windows XP 3N1的SATA驱动加载问题
本帖最后由 jh1688 于 2013-6-20 08:42 编辑

因为想学着做一个XP原版和XP已集成SATA二合一的安装盘,把XP集成了SATA的安装光盘中的所有i文件复制到一个文件夹下,文件夹命名为AAAA,然后修改SETUPLDR.BIN、TXTSETUP.SIF文件将i386指向更改为AAAA,安装时文字部分安装完全正常,重启后进入T39部分安装时,弹出提示:找不到C:\OEM\bin\un7zip.exe。关闭对话框,后面安装还是可以继续下去,但由于没有安装SATA驱动,安装完成后会蓝屏、重启,无法进入系统。
把OEM文件夹复制到光盘根目录下,安装又变得秀正常,真纠结……
XP原版因为采用S大的RUN+驱动安装,所以没有任何问题。
下面把批处理文档奉上,请教各位,怎么改动才能正确在光盘中安装使用。先谢谢了……

附,集成驱动的批处理全文:
==============================
@Echo off
REM Written by Jeff Herre AKA OverFlow rev08.12.1
REM A Script to use MicroSofts DPInst.exe with the DriverPacks.
REM Help and Support available at http://forum.DriverPacks.net  
TITLE DriverPacks.net Stand Alone Driver Updater & Color 9f

Set LOG=nul & IF [%1] NEQ [] (IF /I [%1] NEQ [Q] (Set LOG=%1) & IF /I [%1] EQU [V] (Set LOG=CON))

  Echo. & Echo Locating the DriverPacks...
Set "M=0" & Set "cur=%~dp0"
If [%cur:~-1%]==[\]             Set "cur=%cur:~0,-1%"
IF Exist "%cur%\D\"             Set "DPLoc=%cur%" & Set "M=1" & GoTo Found
IF Exist "%cur%\bin\un7zip.exe" Set "DPLoc=%cur%" & Set "M=2" & GoTo Found
  Echo Searching Root folders since DriverPacks were not found in current folder...
FOR %%i IN (C D E F G H I J K L M N O P Q R S T U V W X Y) DO (
IF Exist "%%i:\OEM\bin\un7zip.exe" SET "DPLoc=%%i:\OEM" & Set "M=2"
IF Exist "%%i:\$OEM$\$1\D\"   SET "DPLoc=%%i:\$OEM$\$1" & Set "M=1" & %%i
IF "%M%">="1" GoTo Found)
  Echo. & Echo Strange... The DriverPacks were not found ??? :( & Echo. & Pause & GoTo Done


:Found
Set DPFL=%SystemDrive%\DPsFnshr.ini
IF "%M%"=="1" (
  Echo. & Echo Prepareing the DriverPacks Finisher. Method 1 was found. & Echo.
IF NOT "%DPLoc%"==%SystemDrive% Echo Copying Driverpacks Finisher files & COPY "%DPLoc%\." %SystemDrive%\ >>%LOG
Echo [Settings]                                 >  %DPFL%
Echo DPsRoot     = "%DPLoc%"                        >> %DPFL%
Echo DPsRootDel  = "false"                        >> %DPFL%
Echo debug       = "true"                        >> %DPFL%
CD %DPLoc%\D
)
IF "%M%"=="2" (
  Echo. & Echo Prepareing the DriverPacks now. Method 2 was found. & Echo.
Start /wait /separate /high "" "%DPLoc%\bin\un7zip.exe" "%DPLoc%\DP*.7z" %SystemDrive%\
COPY /Y "%DPLoc%\DPInst.*"                         %SystemDrive%\D\ >>%LOG%
COPY /Y "%DPLoc%\*.ins"                         %SystemDrive%\   >>%LOG%
"%DPLoc%\bin\un7zip.exe" "%DPLoc%\bin\*.7z"         %SystemDrive%\
Echo [Settings]                                 >  %DPFL%
Echo DPsRoot     = "%SystemDrive%"                >> %DPFL%
Echo DPsRootDel  = "true"                        >> %DPFL%
Echo debug       = "true"                        >> %DPFL%
%SystemDrive% & cd %SystemDrive%\D
)
Echo KTD         = "false"                        >> %DPFL%
Echo KTDlocation = "%SystemRoot%\DriverPacks"        >> %DPFL%
Echo logLocation = "%SystemRoot%"                >> %DPFL%


  Echo. & Echo. & Echo Running the MicroSoft Driver Pack Installer now !
  Echo The progress window is minimized to the task bar & Echo. & Echo.
Start "MicroSoft Driver Pack Installer Tool Running" /wait /separate /realtime /min CMD /C DPInst.exe /c /s


  Echo. & Echo Running the DriverPacks.net Finisher now! & Echo.
%SystemDrive% & cd\ & Start /wait /separate /high "" DPsFnshr.exe


REM Log and Attended output section
IF /I [%1] NEQ [Q] (

IF [LOG] NEQ [nul] (
  Echo. & Echo Method%M% was found at: >>%LOG%
  Echo %DPLoc% >>%LOG%
  Echo List INF's that were matched with this system  >>%LOG%
  FOR /F "usebackq tokens=2,3*" %%G IN ('type F:\WINDOWS\DPINST.log') DO (
   If [%%G]==[Successfull] IF [%%H]==[installation] Echo %%G %%H %%I >>%LOG%)
)
Echo.  & Echo The DriverPacks Stand Alone Drivers installation is complete!
Echo  & Start /min sndrec32 /play /close %windir%\media\ding.wav
Echo.  & Echo This window will close itself in 30 seconds... & Echo.
For /l %%A in (1,1,30) do (<nul (set/p z=#) & >nul ping 127.0.0.1 -n 2 )  
)

:Done
EXIT
================================================
作者: qinliouzhou    时间: 2013-6-19 20:50
请教下,我也是由于做2003和xp的集成盘,然后也是修改SETUPLDR.BIN、TXTSETUP.SIF文件将i386指向更改为XXXX,但是安装过程中有问题,详情地址:http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1,看了你的帖子所以想请教下,我的错在什么地方?谢谢
作者: jh1688    时间: 2013-6-19 23:46
本帖最后由 jh1688 于 2013-6-19 23:48 编辑
qinliouzhou 发表于 2013-6-19 20:50
请教下,我也是由于做2003和xp的集成盘,然后也是修改SETUPLDR.BIN、TXTSETUP.SIF文件将i386指向更改为XXXX ...


找一个空间大点分区,如G盘。在根目录建立一个文件夹命名为:XPCD;进入XPCD文件夹建立一个光盘根目录文件夹:WINXP;再进入WINXP文件夹,建立一个文件夹:VLKO、把原版XP系统VLK版(可以免激活)解压到这个文件夹中去。找一个骨头版的XPPE安装到你的硬盘上,准备自己做启动引导软盘组。

启动PE,进入PE界面,在你的XP解压文件夹中I386平级的地方建立一个批处理:

@ECHO OFF

.\i386\winnt32 /syspart:C /dudisable /s:.\i386  /unattend:.\i386\winnt.sif /makelocalsource /tempdrive:C

跟安装XP系统时一样操作,复制完文件后不要重启,然后到C盘下找到$WIN_NT$.~BT文件夹,这就是软盘组文件,复制到光盘根目录下(WINXP文件夹),改个名字,比如VLKX。

然后修改文件:

修改刚才制作的VLKX文件夹下面的setupldr.bin ,用ASCII方式搜索替换“i386”为“OEMX,这个文件夹你可以自己取名,就是刚才制作出来的软盘组,四个字母,在大写。指的不是你的XP62,是指的软盘组。这个文件是告诉安装程序从哪里启动。

然后修改软盘组文件夹下面的txtsetup.sif,搜索替换“SetupSourcePath = "\"”为“SetupSourcePath = "\VLKO”;这是指的是你的I386在哪。你的i386在VLKO下面。

这两个文件改的是刚才制作的软盘组下面的文件,不是I386下面的。

最后修改 XP.bin 搜索替换 i386 为VLKX,这里也是启动引导软盘组路径。VLKX 你可以自己搞个喜欢的名字,四个字母,大写。

然后为了避免一些问题,把软盘组下面的setupldr.bin和txtsetup.sif复制到i386下,其实不需要,但有时因为生成ISO的选项问题会造成失败,因为有些时候会把这同样的文件视为一个文件,而内容不一样,所以直接复制过去,都一样算了。

1 setupldr.bin从哪里启动(指定的是软盘组)

2 txtsetup.sif从哪里复制文件(指定的是i386在哪里)

这两个文件改软盘组里面的,不是i386里面的。

3 xp.bin从哪里启动光盘

生成可启动ISO,但这样没必要,如果只是单系统,没必要改,直接把i386放在根目录下就行了,还省了软盘组,直接做个无人值守安装就行了。

如果是多合一,软盘组多复制几份,改下相应路径。多建几个文件夹,把I386放里面,也改下路径就行了。

最后告诉你一个小秘密,否则不一定会成功:

一定要在光盘根目录下放上:WIN51、WIN51IP、WIN51IP.SP3、BOOTFONT.BIN。


作者: jh1688    时间: 2013-6-20 08:44
驱动的问题解决了,换一种集成驱动的方式就行了……
3合1合盘完成了。又学习了一个电脑知识……




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3