为什么没有oracle Forms或Reports反编译器? (技术上)

问题描述:

我不明白为什么我找不到这样的工具(oracle Forms或Reports decompiler)为什么没有oracle Forms或Reports反编译器? (技术上)

这很有价值,因为很多企业都使用基于oracle的系统。

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

+1

虽然我们都对缺乏反编译器感到兴奋,但我们只需要在句子末尾添加一个标点符号。 – Woot4Moo 2010-11-24 21:35:08

+1

为什么你需要解编译器?大多数公司设法依靠其企业应用程序的来源。 – APC 2010-11-24 21:57:53

考虑到$ 13亿奖励他们刚刚对SAP侵犯知识产权,甲骨文可能不是最好的人选。一家公司拥有自己的内部开发系统,包括源代码,或者他们从一家大公司购买第三方应用程序(加上支持)。他们为后者付出了很多代价,一家大公司会考虑采取非法手段来欺骗另一家大公司。

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

从技术角度来看,在Forms 3.0之后,'source'也不是直接文本,所以你很难将FMX解码为可理解的东西,然后将它重新组装成有效的FMB 。

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

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


没有资源,但模糊的记忆。

早在Forms 3.0的日子里,您可以手动编辑INP文件(源代码,FMB的等价物),因为它们是平面文本。

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

如果您手动创建FMB并且它是错误的,它会在加载时发生错误或者只是崩溃。它的目的不是告诉你“源代码”有什么问题,因为它不打算加载在外部创建的东西。

因此,构建一个有效的FMB(更不用说FMX的FMB)是非常棘手的。

将FMX解析为可读格式而不是FMB可能是可行的。但绝大多数Forms用户将拥有FMB,并且有更多用例将FMB解析为可用的东西而不是FMX。还有一些实用程序可以做到这一点(包括来自Oracle自己的Forms-to-Apex迁移工具,以及来自PITSS的一些第三方应用程序)。

我敢肯定你回答了你自己的问题:It's very valuable because many enterprises use oracle based systems.
这也是非常有价值的神谕,你不能反编译他们的系统

+0

SHH !!你想被起诉吗?! =) – 2010-11-24 21:41:56