7

资源文件 (.RES) 接受任何类型的二进制文件,但如果它是 exe 文件,我该如何运行它?

4

4 回答 4

12

您必须将其作为文件解压缩到磁盘并执行。

正如 Cosmin Prund 在评论中所说,尽管您不必将其提取到磁盘上,但如果您不这样做,则需要大量的努力。

于 2011-05-22T19:47:14.543 回答
5

http://sites.google.com/site/delphibasics/home/delphibasicssnippets/memoryexecutionunit-winxpwinvistawin7

看看这个内存执行单元。它允许您从内存中执行一个 exe 而无需将其转储到磁盘上。

于 2011-05-23T06:12:04.760 回答
1

对的,这是可能的。在网络的某个地方有一个 Delphi 库可以做到这一点,但我一生都记不住它的名字。它允许您执行普通的 exe 文件,无论它在内存中的什么位置。因此,您可以将其加载到流中,或者只是将其嵌入到资源中。

我意识到我的回复有点令人沮丧,因为我不记得图书馆的名字,但至少你现在知道可以做到。如果你用谷歌搜索“从内存中执行 PE exe”和“Delphi”,那么我相信你会找到它。

于 2011-05-22T22:57:23.387 回答
0

您可能想看看 Orean 的 XBundler:http ://www.oreans.com/xbundler.php

我使用他们的许可产品 (WinLicense),并且对产品、他们的支持、响应能力和更新非常满意。

事实上,我正要购买 XBundler,这样我就可以将一个 dll 安全地嵌入到我的 exe 中。

汤姆

于 2011-05-22T22:20:59.100 回答