生成PE格式的可执行文件

时间:2014-02-07 12:02:12

标签: windows assembly portable-executable

我正在尝试生成PE格式的可执行文件;我正处于这样一个阶段,我有一些dumpbin很满意的东西,据我所知,与微软链接器相关的空程序没有实质性的不同,但Windows仍然拒绝它:PE file - what's missing?

如果我有一些生成有效PE文件的算法,也许我可以从那里爬山。这是我到目前为止所发现的:

  • 读取 PE文件有大量文档,示例代码和工具,而不是从头开始生成。

  • PE Bliss列出其功能中的生成,但不会编译。

  • 用于生成PE文件的示例汇编语言模板专注于最小化大小。最有希望的一个生成一个Windows拒绝的文件,即使我认为它应该被接受;具有讽刺意味的是,我发现它确实起作用,生成一个Windows接受的文件,即使我认为它应该被拒绝,因为几乎每个名义上必不可少的组件都会丢失或格式错误。

是否有可用的示例代码生成正确的PE文件?

1 个答案:

答案 0 :(得分:2)

以下是关于从头开始生成PE的经典页面:

http://www.phreedom.org/research/tinype/

关于必需/可选部分的通用列表,请参阅PE格式的corkami页面:

http://code.google.com/p/corkami/wiki/PE

另请参阅代码树,了解从头开始生成的小型PE文件的许多示例。