当然,我们的 Delphi 项目可以直接从 IDE 构建。但是从命令行启动可以自动化构建多个项目的过程。我们正在使用:
ShellExecute(0,
'open',
PChar('[PATH-TO-DELPHI]\Bin\DCC32.EXE'),
PChar('-B [PATH-TO-PROJECT]\MyProject.dpr'),
PChar('[PATH-TO-PROJECT]'),
SW_HIDE);
通常,当没有代码或构建错误时,此方法效果很好,并且
ShellExecute
返回值“42”。但是,如果出现构建错误,返回值仍然是“42”。
您可以在 IDE 中构建项目来查找错误。但是是否可以从命令行检测编译错误,或者检查某些文件或日志以查看构建是否成功?
请使用
CreateProcess
代替。然后您可以使用 WaitForSingleObject()
等待进程结束,然后使用 GetExitCodeProcess()
获取其退出代码。