用于firemonkey应用程序的delphi xe2中的* .dcu文件是否独立于平台。 在这里。适用于 32 位和 64 位以及其他操作系统。
如果是这样,如何设计 dcu 文件。它是类似于以前的(delphi 1-delphi xe)还是类似于中间语言(如 java 或 .net)
这个新的 dcu 是否会使 dcu 文件的反编译更容易。
这个问题的主要目的是了解有关 firemonkey 的新 dcu 文件的利弊的一些细节。
用于firemonkey应用程序的delphi xe2中的* .dcu文件是否独立于平台。 在这里。适用于 32 位和 64 位以及其他操作系统。
如果是这样,如何设计 dcu 文件。它是类似于以前的(delphi 1-delphi xe)还是类似于中间语言(如 java 或 .net)
这个新的 dcu 是否会使 dcu 文件的反编译更容易。
这个问题的主要目的是了解有关 firemonkey 的新 dcu 文件的利弊的一些细节。
Is the *.dcu files in delphi xe2 for firemonkey application are independent from platforms. here. for both 32bit and 64 bit and other operating systems.
No they are not; Delphi XE2 generates different .dcu files for different platforms, and .dcu files for each platform are created in separated folders.
为了使其更具洞察力,一些背景信息:
DCU 或多或少是以下部分的组合
我不知道这四个是单独的部分还是交错的。我的猜测是 1+2 组合在一起(因为它允许在链接器中使用更通用的例程)并且有一个 3+4+5 的“休息”,也许还有其他一些元数据。
由于标头可能取决于系统单元和操作系统特定单元中的操作系统特定类型和符号,即使在理论上也只有最独立的单元可以是跨平台的。可能不值得费力去打扰。
就反编译而言,它与一般的反编译问题几乎相同,只是有一些曲折:
简而言之,它可能并不比早期的 Delphi 编译器甚至是随机 C++ 编译器的静态 lib + 头文件容易一点。