我开始在XE中大量使用构建事件系统,但有一件事情引起了我的注意,就是我无法在默认项目设置中设置默认的构建事件。是否有任何解决方案/技巧/方法可以实现这一点?如果可能的话,我正在查看bin目录中的CodeGear.Group.Targets和CodeGear.Delphi.Targets,那么我应该在哪里寻找呢?
谢谢
我开始在XE中大量使用构建事件系统,但有一件事情引起了我的注意,就是我无法在默认项目设置中设置默认的构建事件。是否有任何解决方案/技巧/方法可以实现这一点?如果可能的话,我正在查看bin目录中的CodeGear.Group.Targets和CodeGear.Delphi.Targets,那么我应该在哪里寻找呢?
谢谢
啊哈,我自己回答了这个问题。(是否有删除按钮?哈哈)
我做了些实验,添加了一些易于查找的预先和后置构建事件(即启动注册表编辑器和记事本..)
在Delphi的bin目录中有一个名为CodeGear.Delphi.Targets的文件。在导入部分之后,我添加了以下内容:
<PropertyGroup>
<PreBuildEvent><![CDATA[regedit.exe]]></PreBuildEvent>
<PostBuildEvent><![CDATA[notepad.exe $(MSBuildProjectFile)]]></PostBuildEvent>
</PropertyGroup>
重启了IDE,创建了一个新的空项目,并在预构建和后构建时执行这些程序。请注意,虽然它们不会出现在项目配置屏幕上,但您可以覆盖它们,否定CodeGear.Delphi.Targets文件中放置的任何内容。这很省钱,但似乎能达到效果,如果需要,在特定项目上仍然可以覆盖它(当然一定要备份原始文件)。
<PropertyGroup>
<PostBuildEvent><![CDATA["$(programFilesx86)\madCollection\madExcept\Tools\madExceptPatch.exe" "$(DCC_ExeOutput)$(MSBuildProjectName).exe" "$(MSBuildProjectDirectory)\$(MSBuildProjectName).mes"]]></PostBuildEvent>
</PropertyGroup>