我编译我的应用程序项目的发行版本。当我使用二进制编辑器查看编译后的最终 exe 时,我可以看到我自己创建的对象的所有类名称,例如:TPolygon、TRectangle 等...,作为 exe 内的二进制文本数据。
我如何从 exe 中删除此信息。我尝试删除 dpr 中使用的禁用 RTTI:
{$WEAKLINKRTTI ON}
{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
但不是运气,任何提示。
如果您要从可执行文件中删除类名,那么您的应用程序将停止工作。编译到应用程序中的 .dfm 文件包含类名。运行时流框架需要能够在类注册表中查找这些类,如果没有名称,则无法对表单及其属性进行流式传输。
最重要的是,正如 AlexSC 指出的那样,TObject.ClassName要求类的名称出现在可执行文件中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)