初學VB編程,很快就能編出些實用的程序了。我便將它們制成安裝盤送給朋友,但很快就發現一個問題,程序總是按編程時固定好的路徑讀寫文件,但文件路徑改變,程序就找不到路徑了,因此不能正常寫文件。例如編程時設定:picture1.picture=LoadPicture("c:HVBHAN.BMP")但若安裝使用時,工作目錄變為E:HVBHAN.BMP或其它路徑,程序就會出錯,並提示:找不到文件路徑。這個問題看起來很復雜,但實際上很好解決,這只需用VB的App對象。
App對象有兩種重要屬性:(1)App.Path,它在VB編程狀態下返回你的.MAK文件所在目錄;在以.EXE文件運行時,則返回你的.EXE文件所在目錄。(2)App.EXEName它返回你的程序名。下面舉一個簡單的例子,假如你有一個程序為DDC,其目錄為C:HVBDDC4(包括DDC.EXE)在VB編程環境下,在Debug窗口運行:PrintApp.Path,顯示結果:C:HVBDDC4,再運行PrintApp.EXEName顯示結果:DDC。知道了以上兩種屬性,前面所述問題就很好解決了,可以將其修改為:DimApath,DimFilePath
Apath=App.Path
FilePath=Apath+"HAN.BMP"
Picture1.Picture=LoadPicture(FilePath)
這樣,這程序的工作目錄無論改為什麼,都能正常工作了。
(注:文件目錄為根目錄時,以上情況略有不同,App對象在VB2.0以上版本中均存在。)
(四川韓潮湧)
編輯點評:和上期關於延時處理的小程序一樣,本期邊學邊練欄目推薦給大家的也是軟件實用化的一個小小改進。本文所討論的問題可能對於有數據庫操作的軟件尤具實際意義,看了本文你是否可以不必再為你的軟件指定固定的目錄了呢?->