标题:詳解VFP編程之一:創建項目
只看楼主
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
以下是引用mywisdom88在2016-2-4 09:49:34的发言:


对于红色部分,比如我安装程序在 D:\Test中,Application.ActiveProject.HomeDir的值不是D:\Test
如果把把这个目录复制到E盘去运行,如 E:\Test,此时,Application.ActiveProject.HomeDir是?D:\Test还是E:\Test

我那段説了,這是在VFP開發IDE中用的。這個屬性記錄在.pjx/.pjt表中,是靜態的,當你把項目复製到別的目錄,表中的數據並沒有改動,則仍然指向原來的目錄。我還説了,你要主動用才有用,當你把SET DEFAULT TO指向這個目錄時,才起那樣的作用。但是,我們發佈程序,是不會把項目源代碼發出去的,release時必定編譯爲獨立可執行文件,在此狀態下不存在這個對象(ActiveProject)也沒有這個屬性。所以在我們的源代碼中,首先要判斷程序是在VFP IDE中執行還是在.exe中執行,具體示範用法在我以前發過的代碼中有。

程序編譯爲獨立.exe形式,它的默認當前目錄是這個.exe文件自身所在的目錄。

用法代碼:
程序代码:
    IF Application.StartMode == 0
        SET DEFAULT TO (Application.ActiveProject.HomeDir)
        SET PATH TO ADDBS(Application.ActiveProject.HomeDir) + "Source" ADDITIVE 
    ENDIF 



[此贴子已经被作者于2016-2-4 13:53编辑过]


授人以渔,不授人以鱼。
2016-02-04 13:44
wengbin
Rank: 10Rank: 10Rank: 10
来 自:陕西西安
等 级:贵宾
威 望:19
帖 子:370
专家分:1846
注 册:2015-5-8
得分:0 
标记
2016-02-05 09:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-461562-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.878148 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved