无忧启动论坛

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

[转贴] Replace DX8 install with DX9 install

[复制链接]
跳转到指定楼层
1#
发表于 2003-11-23 23:45:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Many people use batch files such as "start wait ........\dxsetup.exe" to update Directx 8.1 to Diredtx 9.0, but why windows setup intall Directx 8.1 first ,and then install Diredtx 9.0last? , BTW, I think it will get more time for windows setup.
so, I replace the Diredtx 8.1 install with Diredtx 9.0 install during windows setup:
1)download DirectX 9.0b Redistributable here:
http://download.microsoft.com/download/c/9...x90b_redist.exe
2)Execute dx90b_redist.exe, accept the EULA, then choose to extract to temp folder:
3)del ususe files on this temp folder, only keep two files:
BDAXP.CAB
DXNT.CAB
4)Extraxt this two .cab files to one folder"dx9"
5)open the file named"dxver.inf",and then mark all it will addreg or delreg
key to regfiles:
[version]
Signature="$Windows NT$"
[DefaultInstall]
AddReg=add.reg
[add.reg]
HKLM,"%DX%"
HKLM,"%DX%","Version",,"4.09.00.0902"
HKLM,"%DX%","RC",,"2"
HKLM,"%DX%","Debug",,"0"
HKLM,"%DX%","InstalledVersion",0x00030001,00,00,00,09,00,00,00,00
[Strings]
DX = "Software\Microsoft\DirectX"
6)ren this filename:(you need to del the old files"dinput.dll" first.etc)
dinput.xpg--->dinput.dll
dinput8.xpg--->dinput8.dll
dxapi.xpg---->dxapi.sys
gcdef.xpg---->gcdef.dll
joy.xpg---->joy.cpl
pid.xpg---->pid.dll
7)del all the *.inf and *.sys ,but keep the file "dxdllreg.inf"
;if you don't del *.sys files ,you will get a warning box during GUI setup "driver whql"
8)ren dpnlobby.dll to dpnlobby.xpg
ren dpnaddr.dll to dpnaddr.xpg
ren dx9bdaxp.cat to dx9bda.cat
9)remove dx9bda.cat and dxxp.cat to \i386\svcpack.and then add lines in you svcpack.inf "[ProductCatalogsToInstall] ":
dxxp.cat
dx9bda.cat
10)create the files dx9.reg:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectPlay8\Service Providers\DPNSPModemModem]
"Friendly Name"="DirectPlay8 moden Provider Object"
"GUID"="{6D4A3650-628D-11D2-AE0F-006097B01411}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectPlay8\Service Providers\DPNSPModemSerial]
"Friendly Name"="DirectPlay8 serial Provider Object"
"GUID"="{743B5D60-628D-11D2-AE0F-006097B01411}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectPlay8\Service Providers\DPNSPWinsockIPX]
"Friendly Name"="DirectPlay8 IPX Provider Object"
"GUID"="{53934290-628D-11D2-AE0F-006097B01411}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectPlay8\Service Providers\DPNSPWinsockTCP]
"Friendly Name"="DirectPlay8 TCP/IP Provider Object"
"GUID"="{EBFE7BA0-628D-11D2-AE0F-006097B01411}"
[HKEY_CLASSES_ROOT\CLSID\{6D4A3650-628D-11D2-AE0F-006097B01411}]
@="DirectPlay8 Modem Provider Object"
[HKEY_CLASSES_ROOT\CLSID\{6D4A3650-628D-11D2-AE0F-006097B01411}\InProcServer32]
@="dpnet.dll"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{6D4A3650-628D-11D2-AE0F-006097B01411}\ProgID]
@="DirectPlay8SPModem.Modem.1"
[HKEY_CLASSES_ROOT\CLSID\{6D4A3650-628D-11D2-AE0F-006097B01411}\VersionIndependentProgID]
@="DirectPlay8SPModem.Modem"
[HKEY_CLASSES_ROOT\CLSID\{743B5D60-628D-11D2-AE0F-006097B01411}]
@="DirectPlay8 Serial Provider Object"
[HKEY_CLASSES_ROOT\CLSID\{743B5D60-628D-11D2-AE0F-006097B01411}\InProcServer32]
@="dpnet.dll"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{743B5D60-628D-11D2-AE0F-006097B01411}\ProgID]
@="DirectPlay8SPModem.Serial.1"
[HKEY_CLASSES_ROOT\CLSID\{743B5D60-628D-11D2-AE0F-006097B01411}\VersionIndependentProgID]
@="DirectPlay8SPModem.Serial"
[HKEY_CLASSES_ROOT\CLSID\{53934290-628D-11D2-AE0F-006097B01411}]
@="DirectPlay8 WSock IPX Provider Object"
[HKEY_CLASSES_ROOT\CLSID\{53934290-628D-11D2-AE0F-006097B01411}\InProcServer32]
@="dpnet.dll"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{53934290-628D-11D2-AE0F-006097B01411}\ProgID]
@="DirectPlay8SPWSock.IPX.1"
[HKEY_CLASSES_ROOT\CLSID\{53934290-628D-11D2-AE0F-006097B01411}\VersionIndependentProgID]
@="DirectPlay8SPWSock.IPX"
[HKEY_CLASSES_ROOT\CLSID\{EBFE7BA0-628D-11D2-AE0F-006097B01411}]
@="DirectPlay8 WSock TCPIP Provider Object"
[HKEY_CLASSES_ROOT\CLSID\{EBFE7BA0-628D-11D2-AE0F-006097B01411}\InProcServer32]
@="dpnet.dll"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{EBFE7BA0-628D-11D2-AE0F-006097B01411}\ProgID]
@="DirectPlay8SPWSock.TCPIP.1"
[HKEY_CLASSES_ROOT\CLSID\{EBFE7BA0-628D-11D2-AE0F-006097B01411}\VersionIndependentProgID]
@="DirectPlay8SPWSock.TCPIP"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce]
"CLEANUP"=hex(2):63,00,6d,00,64,00,20,00,2f,00,63,00,20,00,73,00,74,00,61,00,\
72,00,74,00,20,00,2f,00,6d,00,69,00,6e,00,20,00,63,00,6d,00,64,00,20,00,2f,\
00,63,00,20,00,25,00,53,00,59,00,53,00,54,00,45,00,4d,00,52,00,4f,00,4f,00,\
54,00,25,00,5c,00,53,00,59,00,53,00,54,00,45,00,4d,00,33,00,32,00,5c,00,43,\
00,4c,00,45,00,41,00,4e,00,55,00,50,00,2e,00,43,00,4d,00,44,00,00,00
; it would call the cleanup.cmd at next boot
;cleanup.cmd will replace dpnlobby.dll and dpnaddr.dll

11)create the file named"dx9.inf"
[version]
Signature="$Windows NT$"
[DefaultInstall]
AddReg=add.reg
[add.reg]
HKLM,"%DX%"
HKLM,"%DX%","Version",,"4.09.00.0902"
HKLM,"%DX%","RC",,"2"
HKLM,"%DX%","Debug",,"0"
HKLM,"%DX%","InstalledVersion",0x00030001,00,00,00,09,00,00,00,00
HKLM,"%KEY_WIN_CURVER%\RunOnce","dx9_dllreg",0x00020002, "%systemroot%\system32\dxdllreg.exe"
HKLM,"%KEY_WIN_CURVER%\RunOnce","dx9_update",0x00020002, "%systemroot%\regedit.exe /s %systemroot%\system32\dx9.reg"
[Strings]
KEY_WIN_CURVER="Software\Microsoft\Windows\CurrentVersion"
DX = "Software\Microsoft\DirectX"
12)create the file name"cleanup.cmd":
IF EXIST %SYSTEMROOT%\SYSTEM32\dllcache\dpnaddr.dll REN %SYSTEMROOT%\SYSTEM32\dpnaddr.dll dpnaddr.OLD > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnaddr.XPG copy "%SYSTEMROOT%\SYSTEM32\dpnaddr.XPG" "%SYSTEMROOT%\SYSTEM32\dllcache\dpnaddr.dll" > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dllcache\dpnlobby.dlL REN %SYSTEMROOT%\SYSTEM32\dpnlobby.dlL dpnlobby.OLD > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnlobby.XPG copy "%SYSTEMROOT%\SYSTEM32\dpnlobby.XPG" "%SYSTEMROOT%\SYSTEM32\dllcache\dpnlobby.dll" > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnaddr.dll REN %SYSTEMROOT%\SYSTEM32\dpnaddr.dll dpnaddr.OLD > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnaddr.XPG REN %SYSTEMROOT%\SYSTEM32\dpnaddr.XPG dpnaddr.DLL > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnlobby.dlL REN %SYSTEMROOT%\SYSTEM32\dpnlobby.dlL dpnlobby.OLD > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnlobby.XPG REN %SYSTEMROOT%\SYSTEM32\dpnlobby.XPG dpnlobby.dlL > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\CLEANUP.CMD DEL %SYSTEMROOT%\SYSTEM32\CLEANUP.CMD > NUL
13)at last "dx9 "folder look like this:
amstream.dll
d3d8.dll
d3d8thk.dll
d3d9.dll-------;>new
d3dim700.dll
ddraw.dll
ddrawex.dll
devenum.dll
dijoy.hlp
dimap.dll
dinput.dll
dinput8.dll
dmband.dll
dmcompos.dll
dmime.dll
dmloader.dll
dmscript.dll
dmstyle.dll
dmsynth.dll
dmusic.dll
dplaysvr.exe
dplayx.dll
dpmodemx.dll
dpnaddr.XPG;--->new
dpnet.dll
dpnhpast.dll
dpnhupnp.dll
dpnlobby.XPG;----->new
dpnsvr.exe
dpvacm.dll
dpvoice.dll
dpvsetup.exe
dpvvox.dll
dpwsockx.dll
dsdmo.dll
dsdmoprp.dll
dsound.dll
dsound3d.dll
dswave.dll
dx7vb.dll
dx8vb.dll
dxdiachs.chm
dxdiag.chm
dxdiag.exe
dxdiagn.dll;--->new
dxdllreg.exe;-->new
dxdllreg.inf;-->new
encapi.dll
ksuser.dll
mciqtz32.dll
msdmo.dll
mswebdvd.dll
qasf.dll
qcap.dll
qdv.dll
qdvd.dll
qedit.dll
qedwipes.dll
quartz.dll
dx9.reg;-->new
dx9.inf;-->new
cleanup.cmd;-->new
14)compress all files on the folder dx9 (*.exe/*.dll/*.xpg/*.inf),and then copy to \i386 folder,you can found new files between dx8 and dx9:
d3d9.dll;----->new
dpnaddr.XPG;----->new
dpnlobby.XPG;----->new
dxdiagn.dll;--->new
dxdllreg.inf;-->new
dxdllreg.exe;---->new
dx9.reg;-->new
dx9.inf;-->new
cleanup.cmd;-->new
15)edit the file dosnet.inf and txtsetup.sif, add the newfile in them:
dosnet.inf:
d1,d3d9.dll;----->new
d1,dpnaddr.XPG;----->new
d1,dpnlobby.XPG;----->new
d1,dxdiagn.dll;--->new
d1,dxdllreg.inf;-->new
d1,dxdllreg.exe;--->new
d1,dx9.reg;-->new
d1,dx9.inf;-->new
d1,cleanup.cmd;-->new
txtsetup.sif:
d3d9.dll=100,,,,,,,2,0,0
dpnaddr.XPG=100,,,,,,,2,0,0
dpnlobby.XPG=100,,,,,,,2,0,0
dxdiagn.dll=100,,,,,,,2,0,0
dxdllreg.inf=100,,,,,,,2,0,0
dxdllreg.exe=100,,,,,,,2,0,0
dx9.reg=100,,,,,,,2,0,0
dx9.inf=100,,,,,,,2,0,0
cleandup.cmd=100,,,,,,,2,0,0
16)now in you winnt.sif you can use [guirunone] to run dx9.inf
you can use cmdlines.txt to run it.....

;Because I had replace WMP8 to WMP9 .I don't use this two way ,but add the "dx9.inf" in the wmp.inf.
; why use cleanup.cmd to replace dpnlobby.dll and dpnaddr.dll? because I found if I replace them on \i386, during windows setup , the OLE regdll section will get error ,so I need to do this
2#
 楼主| 发表于 2003-11-23 23:47:47 | 只看该作者

[转贴] Replace DX8 install with DX9 install

[转贴] 中文得
许多做集成光盘的朋友使用"start wait ........\dxsetup.exe"的批命令处理文件来把DX8升级到DX9,但是为什么要让
windows 安装程序先安装DX8,然后又安装DX9呢?我想这会浪费很多的时间
so, I replace the Directx 8.1 install with Directx 9.0 install during windows setup:
所以,我直接把安装光盘上的DX8替换成DX9
1)download DirectX 9.0b Redistributable here:
http://download.microsoft.com/downl...x90b_redist.exe
首先,下载DX9版本,这个连接是英文的,中文的自己找一找!
2)Execute dx90b_redist.exe, accept the EULA, then choose to extract to temp folder:
运行dx90b_redist.exe。选择接受许可协议,然后释放文件到临时目录\temp
3)del ususe files on this temp folder, only keep two files:
BDAXP.CAB
DXNT.CAB
把temp目录的文件全部删除,仅保留:
BDAXP.CAB
DXNT.CAB

4)Extraxt this two .cab files to one folder"dx9"
把这两个.cab文件全部提取到一个目录:\dx9
5)open the file named"dxver.inf",and then mark all it will addreg or delreg
key to regfiles:
[version]
Signature="$Windows NT$"
[DefaultInstall]
AddReg=add.reg
[add.reg]
HKLM,"%DX%"
HKLM,"%DX%","Version",,"4.09.00.0902"
HKLM,"%DX%","RC",,"2"
HKLM,"%DX%","Debug",,"0"
HKLM,"%DX%","InstalledVersion",0x00030001,00,00,00,09,00,00,00,00
[Strings]
DX = "Software\Microsoft\DirectX"
打开dxver.inf,把里面的内容全部记录下来
6)ren this filenameyou need to del the old files"dinput.dll" first.etc)
dinput.xpg--->dinput.dll
dinput8.xpg--->dinput8.dll
dxapi.xpg---->dxapi.sys
gcdef.xpg---->gcdef.dll
joy.xpg---->joy.cpl
pid.xpg---->pid.dll
把dx9目录里的上述文件改名(你首先要删除某些文件。例如dinput.dll等等)
7)del all the *.inf/*.sys/*.png/*.ini
,but keep the file "dxdllreg.inf"
;if you don't del *.sys files ,you will get a warning box during GUI setup "driver whql"
删除所有的*.inf/*.sys/*.png/*.ini,但保留dxdllreg.inf
8)ren dpnlobby.dll to dpnlobby.xpg
ren dpnaddr.dll to dpnaddr.xpg
ren dx9bdaxp.cat to dx9bda.cat
依次把上面3个文件改名
9)remove dx9bda.cat and dxxp.cat to \i386\svcpack.and then add lines in you svcpack.inf "[
ProductCatalogsToInstall] ":
dxxp.cat
dx9bda.cat
把dxxp.cat、dx9bda.cat复制到\i386\svcpack,并且在 svcpack.inf 里的[ProductCatalogsToInstall] 内添加
dxxp.cat
dx9bda.cat

10)create the files dx9.reg:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectPlay8\Service Providers\DPNSPModemModem]
"Friendly Name"="DirectPlay8 moden Provider Object"
"GUID"="{6D4A3650-628D-11D2-AE0F-006097B01411}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectPlay8\Service Providers\DPNSPModemSerial]
"Friendly Name"="DirectPlay8 serial Provider Object"
"GUID"="{743B5D60-628D-11D2-AE0F-006097B01411}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectPlay8\Service Providers\DPNSPWinsockIPX]
"Friendly Name"="DirectPlay8 IPX Provider Object"
"GUID"="{53934290-628D-11D2-AE0F-006097B01411}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectPlay8\Service Providers\DPNSPWinsockTCP]
"Friendly Name"="DirectPlay8 TCP/IP Provider Object"
"GUID"="{EBFE7BA0-628D-11D2-AE0F-006097B01411}"
[HKEY_CLASSES_ROOT\CLSID\{6D4A3650-628D-11D2-AE0F-006097B01411}]
@="DirectPlay8 Modem Provider Object"
[HKEY_CLASSES_ROOT\CLSID\{6D4A3650-628D-11D2-AE0F-006097B01411}\InProcServer32]
@="dpnet.dll"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{6D4A3650-628D-11D2-AE0F-006097B01411}\ProgID]
@="DirectPlay8SPModem.Modem.1"
[HKEY_CLASSES_ROOT\CLSID\{6D4A3650-628D-11D2-AE0F-006097B01411}\VersionIndependentProgID]
@="DirectPlay8SPModem.Modem"
[HKEY_CLASSES_ROOT\CLSID\{743B5D60-628D-11D2-AE0F-006097B01411}]
@="DirectPlay8 Serial Provider Object"
[HKEY_CLASSES_ROOT\CLSID\{743B5D60-628D-11D2-AE0F-006097B01411}\InProcServer32]
@="dpnet.dll"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{743B5D60-628D-11D2-AE0F-006097B01411}\ProgID]
@="DirectPlay8SPModem.Serial.1"
[HKEY_CLASSES_ROOT\CLSID\{743B5D60-628D-11D2-AE0F-006097B01411}\VersionIndependentProgID]
@="DirectPlay8SPModem.Serial"
[HKEY_CLASSES_ROOT\CLSID\{53934290-628D-11D2-AE0F-006097B01411}]
@="DirectPlay8 WSock IPX Provider Object"
[HKEY_CLASSES_ROOT\CLSID\{53934290-628D-11D2-AE0F-006097B01411}\InProcServer32]
@="dpnet.dll"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{53934290-628D-11D2-AE0F-006097B01411}\ProgID]
@="DirectPlay8SPWSock.IPX.1"
[HKEY_CLASSES_ROOT\CLSID\{53934290-628D-11D2-AE0F-006097B01411}\VersionIndependentProgID]
@="DirectPlay8SPWSock.IPX"
[HKEY_CLASSES_ROOT\CLSID\{EBFE7BA0-628D-11D2-AE0F-006097B01411}]
@="DirectPlay8 WSock TCPIP Provider Object"
[HKEY_CLASSES_ROOT\CLSID\{EBFE7BA0-628D-11D2-AE0F-006097B01411}\InProcServer32]
@="dpnet.dll"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{EBFE7BA0-628D-11D2-AE0F-006097B01411}\ProgID]
@="DirectPlay8SPWSock.TCPIP.1"
[HKEY_CLASSES_ROOT\CLSID\{EBFE7BA0-628D-11D2-AE0F-006097B01411}\VersionIndependentProgID]
@="DirectPlay8SPWSock.TCPIP"

;
;这里会在下次启动的时候调入cleanup.cmd,以便替换dpnlobby.dll 和dpnaddr.dll
;
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce]
"CLEANUP"=hex(2):63,00,6d,00,64,00,20,00,2f,00,63,00,20,00,73,00,74,00,61,00,\
72,00,74,00,20,00,2f,00,6d,00,69,00,6e,00,20,00,63,00,6d,00,64,00,20,00,2f,\
00,63,00,20,00,25,00,53,00,59,00,53,00,54,00,45,00,4d,00,52,00,4f,00,4f,00,\
54,00,25,00,5c,00,53,00,59,00,53,00,54,00,45,00,4d,00,33,00,32,00,5c,00,43,\
00,4c,00,45,00,41,00,4e,00,55,00,50,00,2e,00,43,00,4d,00,44,00,00,00
; it would call the cleanup.cmd at next boot
;cleanup.cmd will replace dpnlobby.dll and dpnaddr.dll
建立如上内容的dx9.reg的文件
11)create the file named"dx9.inf"
[version]
Signature="$Windows NT$"
[DefaultInstall]
AddReg=add.reg
[add.reg]
HKLM,"%DX%"
HKLM,"%DX%","Version",,"4.09.00.0902"
HKLM,"%DX%","RC",,"2"
HKLM,"%DX%","Debug",,"0"
HKLM,"%DX%","InstalledVersion",0x00030001,00,00,00,09,00,00,00,00
HKLM,"%KEY_WIN_CURVER%\RunOnce","dx9_dllreg",0x00020002, "%systemroot%\system32\dxdllreg.exe"
HKLM,"%KEY_WIN_CURVER%\RunOnce","dx9_update",0x00020002, "%systemroot%\regedit.exe /s %systemroot%
\system32\dx9.reg"
[Strings]
KEY_WIN_CURVER="Software\Microsoft\Windows\CurrentVersion"
DX = "Software\Microsoft\DirectX"
建立如上内容的dx9.inf文件
12)create the file name"cleanup.cmd":
IF EXIST %SYSTEMROOT%\SYSTEM32\dllcache\dpnaddr.dll REN %SYSTEMROOT%\SYSTEM32\dpnaddr.dll dpnaddr.OLD >
NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnaddr.XPG copy "%SYSTEMROOT%\SYSTEM32\dpnaddr.XPG" "%SYSTEMROOT%\SYSTEM
32\dllcache\dpnaddr.dll" > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dllcache\dpnlobby.dlL REN %SYSTEMROOT%\SYSTEM32\dpnlobby.dlL dpnlobby.OLD
> NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnlobby.XPG copy "%SYSTEMROOT%\SYSTEM32\dpnlobby.XPG" "%SYSTEMROOT%
\SYSTEM32\dllcache\dpnlobby.dll" > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnaddr.dll REN %SYSTEMROOT%\SYSTEM32\dpnaddr.dll dpnaddr.OLD > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnaddr.XPG REN %SYSTEMROOT%\SYSTEM32\dpnaddr.XPG dpnaddr.DLL > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnlobby.dlL REN %SYSTEMROOT%\SYSTEM32\dpnlobby.dlL dpnlobby.OLD > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\dpnlobby.XPG REN %SYSTEMROOT%\SYSTEM32\dpnlobby.XPG dpnlobby.dlL > NUL
IF EXIST %SYSTEMROOT%\SYSTEM32\CLEANUP.CMD DEL %SYSTEMROOT%\SYSTEM32\CLEANUP.CMD > NUL
建立如上内容的cleanup.cmd文件
13)at last "dx9 "folder look like this:
最后你的dx9目录应该类似这样:
amstream.dll
d3d8.dll
d3d8thk.dll
d3d9.dll-------;>new
d3dim700.dll
ddraw.dll
ddrawex.dll
devenum.dll
dijoy.hlp
dimap.dll
dinput.dll
dinput8.dll
dmband.dll
dmcompos.dll
dmime.dll
dmloader.dll
dmscript.dll
dmstyle.dll
dmsynth.dll
dmusic.dll
dplaysvr.exe
dplayx.dll
dpmodemx.dll
dpnaddr.XPG;--->new
dpnet.dll
dpnhpast.dll
dpnhupnp.dll
dpnlobby.XPG;----->new
dpnsvr.exe
dpvacm.dll
dpvoice.dll
dpvsetup.exe
dpvvox.dll
dpwsockx.dll
dsdmo.dll
dsdmoprp.dll
dsound.dll
dsound3d.dll
dswave.dll
dx7vb.dll
dx8vb.dll
dxdiachs.chm
dxdiag.chm
dxdiag.exe
dxdiagn.dll;--->new
dxdllreg.exe;-->new
dxdllreg.inf;-->new
encapi.dll
ksuser.dll
mciqtz32.dll
msdmo.dll
mswebdvd.dll
qasf.dll
qcap.dll
qdv.dll
qdvd.dll
qedit.dll
qedwipes.dll
quartz.dll
dx9.reg;-->new
dx9.inf;-->new
cleanup.cmd;-->new
14)compress all files on the folder dx9 (*.exe/*.dll/*.xpg/*.inf),and then copy to \i386 folder,you can
found new files between dx8 and dx9:
把所有DX9目录下的文件压缩,复制到\i386,以下是新的文件
d3d9.dll;----->new
dpnaddr.XPG;----->new
dpnlobby.XPG;----->new
dxdiagn.dll;--->new
dxdllreg.inf;-->new
dxdllreg.exe;---->new
dx9.reg;-->new
dx9.inf;-->new
cleanup.cmd;-->new
15)edit the file dosnet.inf and txtsetup.sif, add the newfile in them:
编辑你的 dosnet.inf 和 txtsetup.sif,把下面的文件加进去
dosnet.inf:
d1,d3d9.dll;----->new
d1,dpnaddr.XPG;----->new
d1,dpnlobby.XPG;----->new
d1,dxdiagn.dll;--->new
d1,dxdllreg.inf;-->new
d1,dxdllreg.exe;--->new
d1,dx9.reg;-->new
d1,dx9.inf;-->new
d1,cleanup.cmd;-->new
txtsetup.sif:
d3d9.dll=100,,,,,,,2,0,0
dpnaddr.XPG=100,,,,,,,2,0,0
dpnlobby.XPG=100,,,,,,,2,0,0
dxdiagn.dll=100,,,,,,,2,0,0
dxdllreg.inf=100,,,,,,,2,0,0
dxdllreg.exe=100,,,,,,,2,0,0
dx9.reg=100,,,,,,,2,0,0
dx9.inf=100,,,,,,,2,0,0
cleandup.cmd=100,,,,,,,2,0,0
16)now in you winnt.sif you can use [guirunone] to run dx9.inf
you can use cmdlines.txt to run it.....
最后,你可以在winnt.sif里面的 [guirunone] 段内运行dx9.inf
运行语法可参考微软相关网站:
"rundll32 setupapi,InstallHinfSection DefaultInstall 128 %10%\dx9.inf"
;Because I had replace WMP8 to WMP9 .I don't use this two way ,but add the laylist of "dx9.inf" in the
wmp.inf.
; why use cleanup.cmd to replace dpnlobby.dll and dpnaddr.dll? because I found if I replace them on \i
386, during windows setup , the OLE regdll section will get error ,so I need to do this .
为什么要用 cleanup.cmd 来替换dpnlobby.dll 和dpnaddr.dll?,而不是直接替换\i386目录下的?因为不这样做的话。
OLE控件注册的时候就会报错,只有先用DX8版本的注册后,再替换才可以。
回复

使用道具 举报

3#
发表于 2003-11-24 09:24:37 | 只看该作者

[转贴] Replace DX8 install with DX9 install

回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-11-13 03:08

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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