开始在XE中的构建事件系统中大量使用,但我注意到的一件事是我无法在默认项目设置中设置默认构建事件。是否存在任何可行的解决方法/黑客攻击?我正在查看bin目录中的CodeGear.Group.Targets和CodeGear.Delphi.Targets,如果这是可行的,那应该是我应该看的地方吗?
由于
答案 0 :(得分:15)
我做了一些实验,添加了一些易于查找的前后构建事件(即启动注册表编辑器和记事本..)
在Delphi的bin目录中有一个名为CodeGear.Delphi.Targets的文件。在其中,在导入部分之后,我添加了:
<PropertyGroup>
<PreBuildEvent><![CDATA[regedit.exe]]></PreBuildEvent>
<PostBuildEvent><![CDATA[notepad.exe $(MSBuildProjectFile)]]></PostBuildEvent>
</PropertyGroup>
重新启动IDE,新的空项目在构建前和构建后执行这些程序。请注意,它们不会显示在项目配置屏幕上,但您可以覆盖它们,否定在CodeGear.Delphi.Targets文件中放置的内容。便宜,但它似乎可以做到这一点,如果在特定项目上需要,你仍然可以覆盖它。 (当然,请确保备份原始文件。)
答案 1 :(得分:1)
将它放在CodeGear.Delphi.Targets ..的 <PropertyGroup>
<PostBuildEvent><![CDATA["$(programFilesx86)\madCollection\madExcept\Tools\madExceptPatch.exe" "$(DCC_ExeOutput)$(MSBuildProjectName).exe" "$(MSBuildProjectDirectory)\$(MSBuildProjectName).mes"]]></PostBuildEvent>
</PropertyGroup>