【发布时间】:2013-12-18 15:19:57
【问题描述】:
我正在尝试从 Delphi 2007 项目的构建后事件中运行两个 cmd 文件。
构建事件的配置如下:
..\..\buildtools\postbuild.cmd $(OUTPUTDIR)$(OUTPUTNAME)
..\copydlls.cmd $(OUTPUTDIR)
第一个工作正常,第二个似乎根本不会被调用。
如果我这样更改顺序:
..\copydlls.cmd $(OUTPUTDIR)
..\..\buildtools\postbuild.cmd $(OUTPUTDIR)$(OUTPUTNAME)
同样,只执行第一个。
这是 Delphi 2007 的已知限制/错误,还是我在这里做错了什么? (我可以发誓这在过去是有效的。)
编辑:我找到了解决方法:
%comspec% /c ..\..\buildtools\postbuild.cmd $(OUTPUTDIR)$(OUTPUTNAME)
%comspec% /c ..\copydlls.cmd $(OUTPUTDIR)
这按预期工作。还是很奇怪。
EDIT2:还有另一个选项,我在 StackOverflow 上的 this 答案中找到:
call ..\..\buildtools\postbuild.cmd $(OUTPUTDIR)$(OUTPUTNAME)
call ..\copydlls.cmd $(OUTPUTDIR)
我猜(没有尝试过),只有当构建事件是一个 cmd 文件并且我上面引用的过去的经验没有调用 cmd 文件而是可执行文件时才会出现问题。
【问题讨论】:
标签: delphi build delphi-2007 build-events