前些日子,在做校園網維護工作時,當我將刻錄在光盤上的硬盤數據備份文件還原到硬盤后,Outlook Express6(OE6)突然不能使用了,即每當啟動OE6時就會出現可惡的“非法操作”現象。開始以為可能是某些OE文件被破壞了或是病毒在作怪,于是先殺毒,但并沒發現病毒。然后用IE6軟件包重裝了OE6(重裝前備份了原OE目錄下的全部文件),但重裝OE6后“
由于新裝的系統使OE的郵件存儲目錄默認指定到系統區的Windows安裝目錄,而我以前的郵件卻是存放在自定義的E盤目錄“E:\MyMail”下。為了沿用此郵件目錄,啟動OE后我馬上就將新裝的OE郵件存儲目錄再重新自定義,指定到“E:\MyMail”。更改郵件存儲目錄設置后,需重新啟動OE才能生效,于是又馬上關閉OE再重啟動,就在重新啟動OE的時候,那個討厭的“非法操作”框又跳出來了。此時,我才意識到故障原因出在“E:\MyMail”這個郵件存儲目錄中的文件。
故障引出系列問題
為了找到“非法操作”到底是由郵件存儲目錄中的哪個文件所引起,我只好在不能啟動OE的條件下,通過修改注冊表的辦法先將郵件存儲目錄又改回到C區默認的郵件存儲目錄,當正常啟動OE后再關閉它,將默認郵件文件夾的所有文件備份起來后開始做試驗,即每次從原郵件存儲目錄“E:\MyMail”下拷貝一個文件到C區默認的郵件存儲目錄,覆蓋默認郵件目錄下的一個同名文件,然后試啟動OE。終于發現,當從“E:\MyMail”下將Offline.dbx文件拷貝到C區默認的郵件存儲目錄時,啟動OE時出現了問題。即首先出現如圖1所示的消息提示框,點擊圖1消息框的[確定]按鈕后接著就出現圖2所示的消息提示框。
其實我的機器擁有40GB硬盤且空余量充足,有128MB物理內存,加上虛擬內存應該是夠用的。而OE的安裝是全新的,剛才還能正常啟動,可見問題的原因并非這些,而應該是由Offline.dbx文件引起的。原因到底是什么?當我查看該文件的“屬性”時一見“只讀”框中打著對勾,才恍然大悟。由于“E:\MyMail”下的文件先前都是經過刻錄機備份后還原的,而被刻寫到光盤的文件它的屬性都將變成“只讀”屬性。是不是就是這個“只讀”屬性導致了OE不能啟動的故障呢?結果果然是這樣,當去掉Offline.dbx文件的“只讀”屬性后就可以啟動OE而不出現圖1和圖2所示的消息框了。接著,繼續將“E:\MyMail”下的其他文件一個個分別拷貝到C區默認的文件夾,但當拷貝了Folder.dbx文件后,啟動OE時“非法操作”的老問題出來了,原來引起“非法操作”的罪魁禍首是Floder.dbx文件。我馬上猜想到也肯定是它的“只讀”屬性引起的,于是去掉Folder.dbx文件的“只讀”屬性,果然啟動OE一路順利。
圖1
圖2
之后,我再將自定義郵件存儲目錄的全部文件都拷貝到默認郵件目錄,啟動OE再沒出現問題,卻沒想到啟動OE后又出現了打不開原來郵箱的新問題。點擊“收件箱”,出現“內存不夠”的錯誤提示。我不再上Windows錯誤指點的當了,毫不猶豫地將“收件箱.dbx”文件的“只讀”屬性去掉,結果“收件箱”就可以正常打開了。同樣,其他各個“郵箱”原來也因相應的.dbx郵箱文件具有“只讀”屬性而打不開,只要去掉這些文件的“只讀”屬性后故障就消除了。
最后發現,OE郵件存儲文件夾下只有Pop3uidl.dbx和Cleanup.log這兩個文件的屬性改為“只讀”對OE的正常使用沒有影響。而Offline.dbx文件如果具有“只讀”屬性則會導致OE不能啟動,并且出現圖1、2所示的誤導消息提示,Folder.dbx文件若具有“只讀”屬性則會引起“非法操作”現象,同樣會導致OE不能啟動,而郵箱文件若具有“只讀”屬性則只導致相應郵箱打不開的故障。
分析和總結
由于OE在啟動和使用過程中需要對郵件存儲目錄下的有關文件進行讀、寫操作,如果這些文件的屬性變成了“只讀”屬性,那么就使寫操作受到影響而導致OE不能啟動。而郵箱文件在OE使用過程中也是需要不斷地進行郵件增、刪等“寫”操作的,具有“只讀”屬性的文件同樣不能實現這些操作,因此程序就不許你打開它。眾所周知,我們在用刻錄機備份數據文件時,往往會使文件的屬性變為“只讀”。本文的例子提示我們,今后若是因從光盤拷貝文件到硬盤后出現程序不能正常使用的故障,應該想想文件的“只讀”屬性,因為某些應用程序會如同OE一樣,要求其文件不能夠具有“只讀”屬性。