对于firemonkey应用程序,delphi xe2中的* .dcu文件是否独立于平台。 here。适用于32位和64位以及其他操作系统。
如果是这样,dcu文件是如何设计的。它是类似于以前的(delphi 1-delphi xe)或类似中间语言(如java或.net)的东西
这个新的dcu会让dcu文件的反编译变得更容易。
这个问题的主要目的是了解有关firemonkey的新dcu文件的优缺点的一些细节。
答案 0 :(得分:9)
用于firemonkey应用程序的delphi xe2中的* .dcu文件是 独立于平台。这里。适用于32位和64位等 操作系统。
不,他们不是; Delphi XE2为不同的平台生成不同的.dcu文件,每个平台的.dcu文件都在单独的文件夹中创建。
答案 1 :(得分:3)
为了让它更具洞察力,一些背景信息:
DCU或多或少是以下部分的组合
我不知道所有这四个是否是单独的部分或它们是交错的。我的猜测是1 + 2被组合(因为这允许链接器中更通用的例程)并且有一个“休息”,其中包含3 + 4 + 5和其他一些元数据。
由于标头可能依赖于系统单元和OS特定单元中的OS特定类型和符号,因此即使理论上只有最独立的单元可能是跨平台的。可能不值得努力打扰。
就反编译而言,它与一般的反编译问题几乎相同,只有几个曲折:
简而言之,它可能不比早期的Delphi编译器或随机C ++编译器的静态lib +头文件更容易。