gpt4 book ai didi

delphi - Delphi XE2 中名为 InvRules 的单元(以前位于 SOAP 文件夹中)到哪里去了?

转载 作者:行者123 更新时间:2023-12-03 15:55:13 24 4
gpt4 key购买 nike

我正在尝试将一些 Delphi XE 代码移植到 XE2,它使用一个名为 InvRules.pas 的单元,根据 XE2 文档,该单元没有命名空间前缀。

它也不在我期望的 SOAP 文件夹中:

C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\source\soap

最简单的答案是它已从 XE2 中删除(有意或无意)。有谁知道是怎么回事吗?该单元包含诸如GetStackTypeSize和RetOnStack之类的函数,这些函数有时在自定义TRIOHelper类型类中使用。

最佳答案

SOAP 运行时不再使用该单元,因此不再发货。在以前的版本中,它是soaprtl 运行时包的一部分。 XE2 版本的soap 运行时进行了一些重大更改,以使代码可移植到 x64,并减少对基本在 RTTI 支持单元中重复的 BASM 代码的依赖。与提交状态关联的更改日志条目:

Refactor out InvRules, use RTTI to get type sizes. Remove InvRules, PrivateHeap from soap package.

如果您的代码依赖于本单元中的帮助程序,那么您应该可以使用以前版本的源代码。您可能还想比较 XE 和 XE2 之间的 Invoker.pas、InvokeRegistry.pas、OPToSOAPDomConv.pas 和 Rio.pas 单元,以查看代码如何更改,使其不再依赖于 InvRules.pas 单元。

关于delphi - Delphi XE2 中名为 InvRules 的单元(以前位于 SOAP 文件夹中)到哪里去了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7363300/

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