当重新连编一个项目之前,或者从一个项目创建一个应用程序文件 (.app)、动态链接库 (.dll) 或可执行文件 (.exe) 之前发生。
语法
PROCEDURE Object.BeforeBuild
[LPARAMETERS cOutputName, nBuildAction, lRebuildAll, lShowErrors, lBuildNewGuids]
参数
cOutputName
指定要创建的应用程序、动态链接库或可执行文件的名称。
如果 cOutputName 包含一个扩展名,并且省略了 nBuildAction,则cOutputName 指定的扩展名确定了要连编文件的类型。
nBuildAction
指定是重新连编该项目,还是创建一个应用程序、动态链接库或可执行文件。下表列出了nBuildAction 的取值,以及每个值的说明。
nBuildAction | FoxPro.h 常数 | 说明 |
1 | BUILDACTION_REBUILD | 重新连编项目。 |
2 | BUILDACTION_BUILDAPP | 创建一个 .app 文件。 |
3 | BUILDACTION_BUILDEXE | 创建一个 .exe 文件。 |
4 | BUILDACTION_BUILDDLL | 创建一个 .dll 文件。 |
lRebuildAll
指定在创建一个 .app、.dll 或 .exe 文件之前,是否重新编译项目中的文件。如果 lRebuildAll 为“真” (.T.),则重新编译以下文件:
如果 lRebuildAll 为“假” (.F.) 或省略,则在创建一个 .app、.dll 或 .exe 文件之前,不重新编译项目中的文件。
lShowErrors
指定在连编之后是否在一个编辑窗口中显示编译错误。如果 lShowErrors 为“真” (.T.),则显示编译错误。如果 lShowErrors 为“假” (.F.) 或省略,则不显示编译错误。
lBuildNewGUIDs
指定当创建一个可执行文件或动态链接库时是否生成新的注册 GUID(globally unique identifiers)。如果lBuildNewGUIDs 为“真” (.T.),则生成新的 GUID。如果 lBuildNewGUIDs为“假” (.F.) 或省略,则不生成新的 GUID。如果 nBuildAction 小于 3,则不生成新的 GUID。
说明
当执行 Build 方法,发出 BUILD APP、BUILD DLL、BUILD EXE 或 BUILDPROJECT 命令,或者当在“连编选项”对话框选择“确定”按钮时,上面所列的参数回传递给 beforebuild 事件。这些参数除了 nBuildAction 都是按引用传递的。您可以在 beforebuild 事件中更改这些参数的值,以更改如何根据项目创建项目、.app、.dll或 .exe 文件的。在 beforebuild 事件中包含 NODEFAULT,可以防止重新连编项目,或者防止创建应用程序文件 (.app)、动态链接库 (.dll) 或可执行文件 (.exe)。