我正在尝试生成PE格式的可执行文件;我正处于这样一个阶段,我有一些dumpbin很满意的东西,据我所知,与微软链接器相关的空程序没有实质性的不同,但Windows仍然拒绝它:PE file - what's missing?
如果我有一些生成有效PE文件的算法,也许我可以从那里爬山。这是我到目前为止所发现的:
读取 PE文件有大量文档,示例代码和工具,而不是从头开始生成。
PE Bliss列出其功能中的生成,但不会编译。
用于生成PE文件的示例汇编语言模板专注于最小化大小。最有希望的一个生成一个Windows拒绝的文件,即使我认为它应该被接受;具有讽刺意味的是,我发现它确实起作用,生成一个Windows接受的文件,即使我认为它应该被拒绝,因为几乎每个名义上必不可少的组件都会丢失或格式错误。
是否有可用的示例代码生成正确的PE文件?
答案 0 :(得分:2)
以下是关于从头开始生成PE的经典页面:
http://www.phreedom.org/research/tinype/
关于必需/可选部分的通用列表,请参阅PE格式的corkami页面:
http://code.google.com/p/corkami/wiki/PE
另请参阅代码树,了解从头开始生成的小型PE文件的许多示例。