为什么没有oracle窗体或报表反编译器?(技术上)

为什么没有oracle窗体或报表反编译器?(技术上),oracle,forms,oracle10g,report,decompiler,Oracle,Forms,Oracle10g,Report,Decompiler,我不明白为什么找不到这样的工具(oracle窗体或报表反编译器) 它非常有价值,因为许多企业使用基于oracle的系统 有人知道.FMX或.REP格式的文件结构有什么特殊之处,可以阻止为它们构建反编译器吗?我很肯定您回答了自己的问题:这非常有价值,因为许多企业使用基于oracle的系统。 对于oracle来说,无法反编译他们的系统也是非常有价值的鉴于他们刚刚因侵犯SAP知识产权而获得了13亿美元的奖励,oracle可能不是最好的人选。一家公司要么拥有自己内部开发的系统,包括源代码,要么从大公司购

我不明白为什么找不到这样的工具(oracle窗体或报表反编译器)

它非常有价值,因为许多企业使用基于oracle的系统


有人知道.FMX或.REP格式的文件结构有什么特殊之处,可以阻止为它们构建反编译器吗?

我很肯定您回答了自己的问题:
这非常有价值,因为许多企业使用基于oracle的系统。


对于oracle来说,无法反编译他们的系统也是非常有价值的

鉴于他们刚刚因侵犯SAP知识产权而获得了13亿美元的奖励,oracle可能不是最好的人选。一家公司要么拥有自己内部开发的系统,包括源代码,要么从大公司购买第三方应用程序(加上支持)。他们为后者付出了高昂的代价,一家大公司会三思而后行,做一些非法的事情来欺骗另一家大公司

因此,此类软件的合法市场将非常小

从技术角度来看,在Forms 3.0之后,“源代码”也不是纯文本,因此您很难将FMX解码成可理解的内容,然后将其重新组合成有效的FMB

再加上表单的多个版本(主要版本和单个补丁集),创建在各种平台上运行的可执行文件

很多努力,小市场,法律问题


没有资源,只有模糊的记忆

在Forms 3.0时代,您可以手动编辑INP文件(源代码,类似于FMB),因为它们是纯文本

当他们转到FMB时,我记得我在看如何将FMB转换为FMT(文本格式),进行更改,然后再返回。但转换成一个可以接受的FMB是一个问题。如果您从一个.class创建一个.java,您会得到一个通过编译器运行的文件,它会告诉您源代码有什么问题(如果有的话)。java编译器的设计目的是获取外部创建的内容(例如在文本编辑器中)并对其进行解析,然后返回任何解析问题

如果您手动创建一个FMB,但它是错误的,它将在加载时出错或只是崩溃。它不是为了告诉你“源代码”有什么问题,因为它不是为了加载外部创建的东西

因此,构建一个有效的FMB(更不用说从FMX生成FMB)是很棘手的

将FMX解析为可读格式而不是FMB可能是可行的。但是绝大多数表单用户都会使用FMB,并且有更多的用例可以将FMB解析成可用的东西,而不是FMX。还有一些实用程序可以做到这一点(包括Oracle iself提供的表单到Apex迁移工具,以及一些类似的第三方应用程序)。

看看这个


这是一个针对Oracle FMX文件版本6的反编译程序

虽然我们都对缺少反编译程序感到兴奋,但我们只需要在句子末尾加一个标点符号。为什么需要反编译程序?大多数公司都设法保留企业应用程序的源代码。嘘!!你想被起诉吗?!=)哦,诺兹。。。我使用的是Java:(当你购买Oracle应用程序时,你实际上会得到所有的fmb文件。它是为定制而设计的。你能详细说明一下技术上的困难吗?有关于这方面的资源吗?“鼓励链接到外部资源,但请在链接周围添加上下文,以便您的其他用户了解它是什么以及为什么存在。请始终引用重要链接中最相关的部分,以防无法访问目标站点或永久脱机。“谢谢@knoami,这对迁移遗留应用程序的人很有帮助,有时开发人员没有将源代码交付给所有者公司或政府机构,他们忘记了将其存储在何处……不管怎样