最近在寫的一個小程式中有個設定文件,這個文件對整個程式來說是至關重要的,如果它被刪除或改寫的話,整個程式無法運行,或者運行後無法關閉。所以我一直在尋找如果讓手工無法改寫文件的方法。
對於「刪除」來說是很容易解決的,程式中尋找設定檔的路徑,若為空則創建,並給些預設值。 VB的範例程式碼如下:
FileName = App.Path + "/CONFIG"'如果檔案不存在,則建立檔案If Dir(FileName) = "" Then Open FileName For Output As #1 '開啟順序文件,我們可以使用Open語句a = Encode(" 123") + vbCrLf + "10" + vbCrLf 'vbCrLf為回車Print #1, a '寫入資料Close #1 '關閉檔案End If
對於手工改寫配置文件,我一直無能為力,我試圖在程式中隱藏該文件。 VB的範例程式碼如下:
SetAttr FileName, vbSystem Or vbHidden '隱藏文件
但終歸來說是治標不治本,文件仍會被改寫的。然後我想到修改設定檔後綴法,讓人手工沒那麼容易打開文件,但總是有方法打開的。最終讓我想到一個簡單的解決方法是,在程式中先打開配置文件,之後手工就無法打開了。 VB的範例程式碼如下:
Open FileName For Binary As #99
只是記得程式在改寫該文件時要先關閉開啟的文件,不然改寫會失敗的。 VB的範例程式碼如下:
Close #99 '關閉文件
總結一下,防止檔案被改寫的簡單實作方式就是在程式中先開啟該檔案。
以上所述就是本文的全部內容了,希望大家能夠喜歡。