加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – 如何用D2007区分编译和构建?

发布时间:2020-12-15 09:46:18 所属栏目:大数据 来源:网络整理
导读:我已经成功注册了IDE通知程序(IOTAIDENotifier80),因此我收到了AfterCompile通知. 是否有可能找出项目是否构建而不仅仅是编译/制作? 我找到了关于实现IOTAProjectCompileNotifier的this answer,但这在D2007中不可用. 还有其他方法吗?我没有办法,因为这只适
我已经成功注册了IDE通知程序(IOTAIDENotifier80),因此我收到了AfterCompile通知.

是否有可能找出项目是否构建而不仅仅是编译/制作?

我找到了关于实现IOTAProjectCompileNotifier的this answer,但这在D2007中不可用.

还有其他方法吗?我没有办法,因为这只适用于内部专家.

更新:我需要使用包含版本信息资源的外部.rc文件复制“AutoInc内部版本号”功能.也许这可以通过BuildEvents完成?虽然我喜欢在IDE中记录消息的能力,但显示更新的版本号…

解决方法

我不知道写专家或挂钩IDE,我害怕蹦床.话虽如此,我注意到你可以通过监视项目输出文件夹中文件的时间戳来区分编译和构建,但是如果没有代码(* .pas或* .dfm),这种差异就很明显了.自上次编译或构建以来已发生变化.换句话说,当代码更改时,您无法通过监视时间戳来区分.但是,当自上次编译或构建以来没有代码更改时,编译只会更改exe的时间戳(dcu时间戳不会更改).

因此,在没有其他更优雅的解决方案的情况下,只有当您真的非常渴望获得这些信息时(例如,它是编译还是构建?),我可以为您推荐一个由2部分组成的解决方案.

第1部分.编写一个进程来监视输出文件夹中时间戳的更改,以及

第2部分.告诉你的开发人员D2007中存在一个错误,这会使你的构建过程变得复杂,但只需编译两次或构建两次就可以轻松克服这个错误(或者如果你知道如何自动执行这个错误,那就去追求你的生活).如果您可以让开发人员编译两次或构建两次,那么在第二次编译或构建时,您将能够通过测试在第二次编译或构建时是否更改了dcu的时间戳来推断它是编译还是构建.

现在,我会站在顽皮的角落,问自己“为什么是我?”.干杯.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读