![]()
実践してみると、削除バッチ DxDel を実行後、Safeモードで起動掛けると、自動でマシンの電源が落ちてしまう。何度再起動してもダメなので、この方法には問題があるようだ。消しすぎたファイルがあるのかもしれない。先にDirectXの関連づけを切っておくべきだったかもしれない。
バックアップしておいた Windows フォルダを復旧し、バッチファイルを見直すと、恐ろしいことに OLEAUT32.DLL 等も混じっていた。 OLE2の根幹ファイルである。Win98のExplorerがコレなしで動くはずもない。機械的にバッチファイルを作ったのがまずかった。消してはヤバそうなファイルをコメントアウトし、再び試みる。手順も見直し、次のようにしてみた。
実施してみると、削除のバッチファイル中で何度か「ファイルが見つかりません」と出るものの、最後まで通り、標準起動も成功した。DirectX診断ツールで見てみると、DirectXに関する大半のファイルが「見つからない」。DirectXのバージョンも獲得できない状況だ。これなら成功と見てよいだろう。しかしまだ一部削除できていないDirectXファイルがある。削除しようとして見つからなかったファイルもある。この辺を追求する必要がある。
ということで、もう一度 Windows 環境を戻して、DirectX削除をゆっくりと試みた。足りなかった物を補い、最終的に出来上がった「文月用 DirectX 除去バッチ」は次の2つだ。
DxRegDel.inf
signature="$CHICAGO$" Provider=%Author% SetupClass=BASE [DefaultInstall] DelReg=del.reg [del.reg] ;Direct 3D HKLM,"Software\Microsoft\Direct3D" HKCR,"Direct3DRM" HKCR,"CLSID\{4516EC41-8F20-11d0-9B6D-0000C0781BC3}" HKCR,"DirectXFile" HKCR,"CLSID\{4516EC43-8F20-11D0-9B6D-0000C0781BC3}" ;Direct Draw HKCR,"DirectDraw" HKCR,"DirectDraw Clipper" HKCR,"CLSID\{D7B70EE0-4340-11CF-B063-0020AFC2CD35}" HKCR,"CLSID\{593817A0-7DB3-11CF-A2DE-00AA00B93356}" HKLM,"Software\Microsoft\DirectDraw" HKLM,"System\CurrentControlSet\Services\VxD\MTRR" HKCR,"CLSID\{4FD2A832-86C8-11d0-8FCA-00C04FD9189D}" ;Direct Play HKLM,"SOFTWARE\Microsoft\DirectPlay" ;; add by halt HKLM,"Software\Microsoft\DirectMusic" ;Direct Sound ;Migration 450 HKLM,"Software\Microsoft\Windows\CurrentVersion\Setup\Migration" ;Version Info HKLM, "SOFTWARE\Microsoft\DirectX" ;Uninstall String HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\DirectXDrivers" |
DxDel.bat
ECHO DirectX Filesを削除します PAUSE rem ================= rem = system folder = rem ================= CD C:\WINDOWS\SYSTEM DEL ddraw.dll DEL ddraw16.dll DEL ddrawex.dll DEL ddraw.vxd DEL ddhelp.exe DEL dxapi.sys DEL d3dim.dll DEL d3dramp.dll DEL d3drm.dll DEL d3dxof.dll DEL d3dpmesh.dll DEL dplayx.dll DEL dpmodemx.dll DEL dpwsockx.dll DEL dplaysvr.exe DEL dsound.dll DEL dsound3d.dll DEL dsound.vxd DEL dinput.dll DEL dinput.vxd DEL vjoyd.vxd DEL msanalog.vxd DEL joy.cpl DEL gcdef.dll DEL gchand.dll DEL dmusic.dll DEL dmusic16.dll DEL dmusic32.dll DEL dmband.dll DEL dmcompos.dll DEL dmime.dll DEL dmloader.dll DEL dmstyle.dll DEL dmsynth.dll DEL actmovie.exe DEL amstream.dll DEL danim.dll DEL devenum.dll DEL dxmasf.dll DEL dxtmsft.dll DEL dxtmsft3.dll DEL dxtrans.dll DEL lmrt.dll DEL lmrtrend.dll DEL mciqtz.drv DEL mciqtz32.dll DEL mpg2splt.ax rem DEL mplayer2.exe DEL msdxm.ocx DEL qcap.dll DEL qcut.dll DEL qdv.dll DEL qdvd.dll DEL quartz.dll DEL quartz.vxd rem DEL strmdll.dll stream DEL unam4ie.exe DEL vidx16.dll DEL iac25_32.ax DEL ir41_32.ax DEL ir41_qc.dll DEL ir41_qcx.dll DEL ir50_32.dll DEL ir50_qc.dll DEL ir50_qcx.dll DEL ivfsrc.ax DEL tm20dec.ax rem DEL comcat.dll ole? rem DEL msvcrt.dll ole rem DEL oleaut32.dll ole rem DEL olepro32.dll ole rem DEL urlmon.dll ole DEL wininet.dll rem DEL framebuf.dll std rem DEL framebuf.drv std DEL msjstick.drv rem DEL supervga.drv std rem DEL vga.drv std rem DEL C:\WINDOWS\system32\drivers\gm.dls rem DEL dpmodemx.dll ... 存在せず rem DEL dpwsockx.dll ... 存在せず rem ------------------- rem - strongly depend on hardware rem ------------------- rem DEL trid_d3d.drv may need rem DEL trident.vxd may need rem DEL STAC97FJ.sys may need rem ------------------- rem - 旧バッチファイル実行後判明分 rem ------------------- DEL dplay.dll DEL dpserial.dll DEL dpwsock.dll DEL dvideo.dll rem =================== rem = system back up = rem =================== CD C:\WINDOWS\SYSBCKUP DEL DMUSIC32.DLL DEL DMUSIC16.DLL DEL DMUSIC.DLL DEL DMSYNTH.DLL DEL DMSTYLE.DLL DEL DMLOADER.DLL DEL DMIME.DLL DEL DMCOMPOS.DLL DEL DMBAND.DLL DEL DSOUND3D.DLL DEL DSOUND.VXD DEL DSOUND.DLL DEL DPWSOCKX.DLL DEL DPWSOCK.DLL DEL DPSERIAL.DLL DEL DPMODEMX.DLL DEL DPLAYX.DLL DEL DPLAYSVR.EXE DEL DPLAY.DLL DEL MSJSTICK.DRV DEL GCHAND.DLL DEL GCDEF.DLL DEL VJOYD.VXD DEL MSANALOG.VXD DEL JOY.CPL DEL DINPUT.VXD DEL DINPUT.DLL DEL DXAPI.SYS DEL DDRAWEX.DLL DEL DDRAW.VXD DEL DDRAW16.DLL DEL DDRAW.DLL DEL DDHELP.EXE DEL D3DXOF.DLL DEL D3DRAMP.DLL DEL D3DPMESH.DLL DEL D3DRM.DLL DEL D3DIM.DLL :FIN CD \ ECHO Complete!! |
C:\WINDOWS\SYSBCKUPにあるDirectXファイルも削除しないと復活してしまうので注意が必要だ。
この削除バッチで削除後、RegCleanで洗い出されたレジストリは 147KB、3100行余にも及ぶ。逆に言えばそれだけシステムにとって重要性が高そうだと言える。さらに逆を言えば、ゲームをしない人はこれだけの無駄なレジストリ領域を使われているのである。
ばっさりとDirectXを切ってみてもとりわけ不安定になるわけでもないので、調子に乗って今度はフォントの削除を行おう。Windows Startという雑誌に載っていた「システム必須フォント」なるもののみ残し。他のフォントは別フォルダに移動する。
残すフォント
Courier 10,12,15 Courier Normal, Bold, Italic and B&I Modern MS Snas Serif 8,10,12,14,18,24 MS Serif 8,10,12,14,18,24 MS ゴシック, Pゴシック and UIゴシック MS 明朝 and P明朝 MS-DOS CP932 Small Fonts Symbol 8,10,12,14,18,24 Symbol Times New Roman Normal, Bold, Italic and B&I WingDings Comic Sans MS Normal and Bold Impact Lucida Console Marlette Tahoma Normal and Bold Verdana Normal, Bold, Italic and B&I Webdings |
リストの中にも設定次第では消せそうなフォントもあるので、今後更に突き詰めて行くつもりだ。
フォントの移動と共に、不要そうなフォルダ「マウスカーソル(C:\WINDOWS\Cursors)」「PIFフォルダ」も削除。
以上完了後の各サイズ。
|
Cドライブ使用容量: 274MB→228MB うち、windowsフォルダ: 208MB→166MB system.dat = 1973KB→1973KB user.dat = 121KB→121KB |