VFP 启动完成后,工作环境被设置成默认状态。您可以即时地更改环境参数,这有几种方法,各种方法可能适合于不同的情况。
交互式修改
在命令窗口输入环境设置命令,执行后该修改会立即生效。绝大部分的环境参数是通过 SET 命令设置的,另外还有一些通过系统变量存储以及极少数的函数设置。在早期的XBASE 工具中,例如dBASEII中,仅有 20 几条 SET 命令,而今天,VFP 中已经有 120 多个 SET 命令了。交互式的修改方法是枯燥的,因此只用于临时性的修改,例如调试等。
程序化执行修改
可以将一组环境设置命令组织成一个程序文件,运行该程序,就相当于在命令窗口一一输入执行了这组命令,有些情况下是需要这样做的,例如在开发环境下同时调试多于一个项目的时候。可以将该环境设置程序存为一个过程或直接写在项目的主文件中。事实上,对于应用程序,因为最终要脱离开发环境运行,所以大部分都是这样做的。
用命令方式读取Windows 注册表中的设置
让 Visual FoxPro 再次读取自己的注册表设置,并且使用当前的注册表设置更新自己。 语法为: SYS(3056 [,1]) 说明:包含1选项可以只根据注册表设置进行更新,不包括 SET 命令和文件位置。Visual FoxPro 在 Windows 注册表的选项对话框中保存设置。当Visual FoxPro 启动时,读取这些设置,并利用这些设置进行配置。SYS(3056)可更新包含有文件名和路径的系统变量,而系统变量由SET命令和注册表设置。当您选择设置为默认值时,选项对话框指定的设置写入注册表。其中一些影响Visual FoxPro环境的设置含有SET 命令,例如SET BELL,SET LOCK等。注意 SYS(3056)不更新来自Config.fpw(即 Visual FoxPro 配置文件)的设置。
有关环境设置的命令
有很多环境设置的命令,在本文的附表中,以"选项"对话框中的分类列出了相应的环境设置命令,还有一些命令没有包含在"选项"对话框中,但它们也是关于环境的设置命令,本文仅将它们列出来,具体的意义及语法可参见随机文档。
SET ALTERNATE SET ASSERTS SET AUTOSAVE SET COLOR OF SCHEME ET COLORS SET SET CONSOLE SET COVERAGE SET CPCOMPILE SET CURSOR SET DEBUG SET DEBUGOUT SET DEVICE SET DISPLAY SET EVENTLIST SET EVENTTRACKING SET FIXED SET FULLPATH SET FUNCTION SET MACKEY SET MEMOWIDTH SET NULL SET NULLDISPLAY SET OLEOBJECT SET PRINTER SET READBORDER SET SPACE SET STATUS SET SYSMENU SET TEXTMERGE SET TEXTMERGE DELIMITERS SET TYPEAHEAD
无论是交互式还是程序化执行命令,其修改都是临时的,只对当前工作有效,VFP 系统关闭后,这种修改不能被保存,下一次运行,如果需要同样的设置,您不得不再一次输入该命令或执行该程序。要想使修改成为永久,必须将修改保存在 Windows 注册表中或构建配置文件。
修改注册表
有两种方法:直接修改 Windows 注册表或使用 VFP 开发环境提供的"选项卡"对话框。对于直接修改 Windwos 注册表的方法,没有人会建议您这样做,除非您首先对 Windwos 注册表的结构非常熟悉,其次对 VFP 在 Windows 注册表中的各种参数的意义比较了解,第三有某些特殊需要以至于不能使用常规的方法完成。常规的方法,是使用 VFP 的"选项卡"对话框来完成环境配置。
直接修改注册表
VFP 环境设置信息在 Windows 注册表的目录如下: HKEY_CURRENT_USERSoftwareMicrosoftVisualFoxPro6.0Options 主键名称在本文附表中有详细介绍。
使用"选项"对话框
使用"选项卡"对话框来进行系统的配置比直接修改 Windows 注册表的方法至少有两个好处,第一,很多配置参数在"选项卡"上是以一种"易于理解的方式"表达的,您只需在某些"问题"前打勾或者在很多答案中选择一个,这就象您填一份表格一样来得轻松。第二,在"选项卡"上进行的配置,一旦完成后,立即生效,而直接修改 Windows 注册表的方法却不是这样,只能是在下一次运行 VFP 时生效。
在开发环境下,执行"工具"菜单中的"选项"菜单项,会出现"选项"对话框。对话框上有12个卡页,分12个方面对环境进行配置。本文附表中详细描述了其中的每一项设置。事实上,真正需要修改的并不多,很多项设置,原始值应该能满足要求。现在的问题是,当你修改完成后,可有两种选择,按"确定"按钮退出对话框,您的修改只会保存在当前环境中,随着系统的关闭而失效;按"设置为默认值"按钮退出对话框,当前的设置将会被写进 Windows 注册表从而成为新的默认值。