如何在VFP里怎样设置默认路径?

我有这样一段代码:
#########################
SET TALK OFF

LOCAL lcSys16, lcProgram
lcSys16 = SYS(16) &&查询当前运行程序名
lcprogram = LEFT(lcsys16, RAT("", lcsys16,2)) &&获取当前工作目录

SET path TO &lcprogram &&设置工作路径
*SET DEFAULT TO &lcprogram &&设置默认工作目录

DO FORM form\form1.scx
READ events
######################

在执行到 SET DEFAULT TO &lcprogram 时系统报错“无效的路径或文件名!”
---------------------------------------------------------------

当变量lcprogram中包括有空格等字符时,会出错,所以改为:
SET DEFAULT TO "&lcprogram"

---------------------------------------------------------------
*设置默认路径可用以下三种方法:
*方法一:


PUBLIC LCNowpath
LCNowpath=SYS(5)+SYS(2003)+""
set default to "&LCNowpath" &&设置默认工作目录


*方法二:


PUBLIC LCSys16,LCNowpath
LCSys16=SYS(16) &&获取当前程序所在的全路径,包括当前运行程序名。
LCNowpath=LEFT(LCsys16,RAT("",LCSys16,1)) &&获取当前运行程序所在工作目录。
set default to "&LCNowpath" &&设置默认工作目录


*方法三:(指定程序名)


PUBLIC LCNowpath
prgname="你的程序名.exe"
prglen=len(prgname)
allname=allt(sys(16))
alllen=len(allname)
LCNowpath=substr(allname,1,alllen-prglen)
set default to "&LCNowpath" &&设置默认工作目录


--------------------------------------------------------------------
除了上面的SET DEFAULT TO "&lcprogram" 这种方式外,还有一种方式是使用名称表达式:
SET DEFAULT TO (lcprogram)

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus