開頭
在WINDOWS時代,system.ini仍然是系統不可或缺的配置檔案,深入了解它有助於我們認識WINDOWS。每次開機時,都要改寫它,你查一下WINDOWS下system.ini的修改時間就是剛才的開機時間。
設定詳解
下面分段了解WINDOWS在system.ini中的設定。
system.drv=system.drv 這是系統設備驅動程式;
drivers=mmsystem.dll power.drv 這是多媒體與電源管理驅動力程式;
shell=Explorer.exe 這是系統的shell程式,一項重要設定;
user.exe=user.exe gdi.exe=gdi.exe 這兩項是系統接口模組;
sound.drv=mmsound.drv dibeng.drv=dibeng.dll 這兩項是音效卡的驅動程式;
comm.drv=comm.drv commport的驅動程式;
mouse.drv=mouse.drv 這是滑鼠的驅動程式;
keyboard.drv=keyboard.drv 這是鍵盤的驅動程式;
fonts.fon=vgasys.fon fixedfon.fon=vgafix.fon oemfonts.fon=vgaoem.fon
這三項是系統所需的基本字型檔;
386Grabber=vgafull.3gr display.drv=pnpdrvr.drv 這兩項是顯示卡的驅動程式。
[boot.description],以下幾項,你一看便知是什麼含義。
system.drv=標準個人計算機
keyboard.typ=標準 101/102 鍵或 Microsoft 自然鍵盤
mouse.drv=標準滑鼠
aspect=100,96,96
display.drv=NVIDIA Vanta
[386Enh] 在這裡定義了有關係統和外設所需的各種虛擬驅動程式,不能隨意更改這裡的設定,唯一有一項就是COM4buffer=2048,表示是modem相關的設定,可以人為加入,也有可能是modem的最佳化程式自動加進來的
ebios=*ebios 這是擴展bios設備程式;
device=vpbiosd.vxd device=vmsgd.vxd這是指定要載入的虛擬設備驅動程式名;
mouse=*vmouse device=*dynapage device=*vcd device=*vpd device=*int13
woafont=dosapp.fon device=*enablekeyboard=*vkd display=*vdd,*vflatd 這是設定已經定義在WINDOWS系統檔案中虛擬設備程式;
COM4buffer=2048 modem連線埠快取
[drivers]
這裡主要提供給應用程式或外設載入有關的驅動程式用的,WINDOWS自身不會在這裡設定任何項目。
wavemapper=*.drv MSACM.imaadpcm=*.acm MSACM.msadpcm=*.acm
wave=mmsystem.dll midi=mmsystem.dll
[mci] 設定與多媒體有關的項目,除了WINDOWS系統自己的mci 控制程式外,其它多媒體相關的設備也會在這裡設定所需要的驅動程式和相關檔案。
cdaudio=mcicda.drv sequencer=mciseq.drv waveaudio=mciwave.drv
avivideo=mciavi.drv videodisc=mcipionr.drv vcr=mcivisca.drv
MPEGVideo=mciqtz.drv MPEGVideo2=mciqtz.drv
[vcache] 這裡是設定磁碟緩衝記憶體,可以加入MinFileCache=8192,MaxFileCache=8192, 這裡單位是kb ,所設數值要用系統監視器來確定,一般而言,MaxFileCache是物理記憶體的1/4,最大不超過12MB,當然如果用一個通用參數是8MB
[Password Lists]
ZRD=C:\WINDOWS\ZRD.PWL 這是進入WINDOWSR 密碼存放位置。
[drivers32]這裡主要是提供給應用程式或外設需要載入相關的驅動程式使用的,許多應用程式或外設也在這裡設定一些相目,但應用程式刪除後並不把相關設定刪除,當然留在這裡,一般情況下,沒有什麼妨礙。
MSACM.imaadpcm=imaadp32.acm MSACM.msadpcm=msadp32.acm
MSACM.msgsm610=msgsm32.acm MSACM.msg711=msg711.acm
MSACM.trspch=tssoft32.acm vidc.CVID=iccvid.dll
VIDC.IV31=ir32_32.dll VIDC.IV32=ir32_32.dll
vidc.MSVC=msvidc32.dll VIDC.MRLE=msrle32.dll
VIDC.IV50=ir50_32.dll msacm.iac2=C:\WINDOWS\SYSTEM\IAC25_32.A X。
system.INI是包含Windows初始配置信息的重要檔案,其中的配置語句較複雜且對Windows用戶十分重要。本文描述了該檔案包含的重要配置語句的意義。
Windows利用擴展名為.INI的檔案保存Windows及其應用程式的初始化信息。Windows及其應用程式每次啟動時,都會從相應的INI檔案中讀取初始化設定信息,並據此進行配置。Windows的兩個最重要的INI檔案是WIN.INI和system.INI,WIN.INI控制Windows用戶視窗環境的概貌(如視窗邊界寬度、系統字型等),而sys tem.INI包含整個系統的信息(如顯示卡驅動程式等),是存放Windows啟動時所需要的重要配置信息的檔案,相當於DOS中的CONFIG.SYS。sys tem.INI能識別上百個不同命令,其中的一些語句的意義不言自明,並且可能通過SETUP程式或主群組的控制臺來設定,而另一些就比較懂且只能由人工改變。因此,為了高效的執行程式,Windows的用戶就需了解sys tem.INI的內部結構和其中的關鍵語句的意義,才能維護好系統。
sys tem.INI由許多小節組成,每個小節有一個方括弧括起來的小節名標名,如[boot],每個小節包含一些格式為“關鍵字名=值”的設定。該檔案格式為文本檔案,可以用任何文字處理器如DOS中的Edit觀察或修改。下面,我們將討論sys tem.INI的重要小節及其中的關鍵語句。
[boot]小節
該小節通常是sys tem.INI的每一小節,所指明的檔案包含對Windows至關重要的代碼與數據。一般來說,該小節中的語句宜手工改動,Windows安裝或設定程式會通過用戶的選擇確定適當的設定。
display.drv指明顯示卡的驅動程式,為Windows提供螢幕輸出
keyboard.drv指明鍵盤的驅動程式
mouse.drv指明滑鼠的驅動程式
386grabber指明顯示捕捉器,在386增強模式下Windows利用它進行DOS應用程式的輸出顯示及從DOS螢幕拷貝數據到剪貼簿。
以.FON結尾的關鍵字指明字模檔案,如fonts.fon指明包含Windows的比例空間系統字模的檔案,比例字模用於按鈕、選單、視窗標題等。
shell指明用作用戶與Windows之間的主要聯繫紐帶的程式,預設值是shell=progman.exe,這樣Windows每次啟動時都會自動載入程式管理器。如果用戶更喜歡其它的Windows程式作Windows的外殼,可把progam.exe改變為相應帶擴展名的程式名,例如,Shell=winfile.exe將使得Windows每次啟動時都自動載入檔案管理器而不是程式管理器。
[boot.description]小節
該小節包含[boot]小節中載入的的驅動程式的簡明文字描述,例如,display.drv=VGA,它們由Windows安裝程式及設定程式設定,Windows向用戶報告配置信息時也需要使用這些描述。一般來說,該小節中的設定也不應手工改變。
[keyboard]小節
該小節只有四個語句。
keyboard.dll指明定義鍵盤布局的DLL。對大多數鍵盤而言該項不需要,因此常常是空白的。
type指明鍵盤類型,1代表83鍵盤,2代表OLIVETTI(好利獲得)的102鍵盤,3代表84鍵或86鍵AT鍵盤,4代表101鍵或102鍵增強鍵盤。
subtype指明特定的鍵盤品牌和種類。
oemansi.bin指明包含非美國鍵盤所用的字元翻譯表的檔案。
[mci]小節
該小節列舉出了為各種多媒體設備提供MCI(媒體控制接口,它是Windows內部的一組功能調用的名稱,用於生成程式和媒體設備之間的接口)支持的驅動程式,例如AVIVideo指明AVI視頻驅動程式。依賴於MCI,Windows應用程式只需發出簡單的MCI命令就可以控制媒體設備,而且,相同的播放命令可以適用於各種設備。該小節的語句是在安裝多媒體設備和驅動程式時寫入或修改的,不能手工修改。
[NonWindowsApp]小節
該小節為Windows存放DOS應用程式的通用設定。其中比較有意義的是以下三個設定。
CommandEnvSize為DOS應用程式設定環境大小。例如,在Windows下運行一個批處理檔案時,如出現環境空間不足的錯誤信息,可以通過在sys tem.INI中增加CommandEnvSize語句如CommandEnvSize=512以增大環境空間。
LocalTSRs指有要特殊處理的TSRs(記憶體駐留程式)。預設狀態下,Windows啟動之前載入的TSRs被所有活動的虛擬機所共享,這時有時會造成問題甚至會導致系統崩潰。如果在LocalTSRs列表中加入TSRs的檔案名稱(無需擴展名),Windows將把該駐留程式的一個單獨拷貝載入到每一個虛擬機中,避免造成上述問題。
ScreenLines指明文本模式的DOS應用程式的螢幕顯示行數。預設情況下,Windows在DOS視窗中顯示25行,在sys tem.INI中增加一條ScreenLines=50語句,就可以變為50行。多數DOS應用程式自動適應增加的行數,有些則需要特殊配置,還有一些早期的應用程式只能工作在25行方式下。
對該小節的Windows不提供修改手段,修改必須手工進行。
[standard]小節
該小節保存只對標準模式有效的設定。386及更高檔的機器上一般不再使用標準模式,所以不再討論相應語句。
[386Enh]小節
該小節保存只對386增強模式有效的設定,它是sys tem.INI中最複雜的小節,可以支持許多語句,有些是有用的,而有些對普通用戶來說卻沒有必要了解。下面,我們列舉出一些較為有用的語句。
VirtualHDlrq可取值為off或on,以指明是否禁止Windows處理硬碟中斷,置為ON時,可為Windows提供較好的性能,但它可以與某些硬碟及軟體不兼容。
DebugLocaReboot預設設定為off,設定為on時允許用戶按Ctrl+Alt+Del來關閉一個應用程式。
MessageBackColor和MessageTextColor改變Windows切換到全螢幕幕顯示信息時所使用和背景和前景顏色(顏色值由0到F,與標準VGA顯示方式的16色調色板相同)。
device語句的等號右邊帶有星號的字元串指明眾多的被Windows虛擬管理器(VMM)載入的VxDs(運行於Windows最高操作特權級的32位虛擬設備驅動程式),它們是作業系統自身的一部分,例如device=*v86mmgr是指載入虛擬86模式記憶體管理器,而device=*pageswap載入虛擬頁交換設備。另一些device語句如device=vtdapi.386載入第三方廠商的VxDs。VxDs是Windows的核心,所以sys tem.INI要載入諸多VxDs。
FileSysChange指明是否禁止Windows在運行的DOS應用程式每次創建、刪除或重命名一個檔案時都告知檔案管理器。其預設設定是on。你可並列地打開檔案管理器和一個DOS視窗,用DEL命令在DOS視窗中刪除檔案管理器顯示的一個檔案,就可以看到這種效果。FileSysChange=on,被刪除的檔案將會立即從檔案管理器視窗中消失;FileSysChage=off,該檔案直到檔案管理器重新顯示時才會消失。FileSysChange=off在某種程式上可以加快Windows的運行速度。
PerVMFiles指明Windows為每個虛擬機分配的檔案句柄數+CONFIG.SYS中的FILES的值,也就是Windows為每個虛擬機分配的檔案句柄數是PerVMFiles與FILES相加之和,其預設值為10,即可找於10+FILES個檔案。可以修改PerVMFiles的值,但由於Windows是基於DOS檔案系統之上的,因此不能超過同時打開255個檔案的限制。
對sys tem.INI各語句有所了解,用戶就可以通過修改其中的某些語句的值為所需值來適合自己的需要或解決部分故障。例旭安裝Windows時,滑鼠器未接上,安裝完成後,啟動Windows沒有滑鼠。這時可退回到DOS系統,通過檔案編輯器瀏覽sys tem.INI,發現[boot]小節中的mouse.drv=nomouse.drv,從其它安裝了Windows的機器中Windows目錄的子目錄sys tem下拷貝滑鼠驅動程式MOUSE.DRV到故障機器的Windows目錄的子目錄sys tem中,並修改sys tem.INI的[boot]小節中的muse.drv的值為mouse.drv,再次啟動sys tem.INI,滑鼠恢復正常。像這樣的因為sys tem.INI語句值引起的故障是Windows啟動常見故障。