gpt4 book ai didi

ibm-midrange - IBM i : Binary diff between two *PGM objects

转载 作者:行者123 更新时间:2023-12-04 00:51:42 25 4
gpt4 key购买 nike

操作系统:IBM i (AS/400)

我想检查两个 ILE *PGM(或 *SRVPGM)对象的可执行代码是否相同。无法使用包含的源更改日期,因为可以更改时间戳但代码是相同的。这是从 git 存储库下载源代码的情况,因此可以更改源代码更改日期。

例子:您有一个包含所有已编译程序对象的库 A。然后你会从git下载完整的源代码到AS/400,编译成另一个库B。现在你想检查库 A 和库 B 之间哪些程序对象确实发生了变化。只有发生变化的程序对象应该被保存并传输到目标系统。

将要比较的对象都是在同一系统和同一目标版本上编译的。

我没有找到比较二进制代码的 API。我可以使用 MI 获取此信息吗?

有人遇到同样的问题吗?

最好的问候,马蒂亚斯

最佳答案

如果 *PGM 碰巧是用 DBGVIEW(*LIST) 或 DBGVIEW(*ALL) 编译的

您应该能够使用调试 API 从对象中提取编译列表。

否则,Dump Object命令可用于生成对象内容的假脱机文件。然后您可以比较假脱机文件。显然,它们不会是完美的匹配,例如库名称和创建日期会有所不同。我还怀疑如果编译对象是在不同级别的操作系统(版本甚至 PTF)上编译的,那么编译对象会有差异。

关于ibm-midrange - IBM i : Binary diff between two *PGM objects,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65842230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com