c++ - PE 问题 - 加壳

标签 c++ c portable-executable

我正在尝试制作我自己的打包器,并且我的打包器可以很好地处理 VC++6 编译的可执行文件,但是当我尝试打包使用 VC++8 编译的可执行文件时,可执行文件会崩溃。 所以我想知道新版本的C++中PE结构有没有变化?

最佳答案

PE 文件格式没有变化,正如上面的评论者所指出的,这与您的问题无关。

听起来你的加壳器依赖于 VC++6 运行时库,因此当它解压一些期待 VC++8 库的东西时,坏事发生了。解决方案是使您的打包程序运行时库独立。

BigBoote 的“How to write your own packer”解决了这个问题并建议实现您自己的简单运行时。

http://www.stonedcoder.org/~kd/lib/61-267-1-PB.pdf

关于c++ - PE 问题 - 加壳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7242430/

相关文章:

C:在函数原型(prototype)或结构声明中使用#define 值时遇到问题

windows - 二进制文件(PE/COFF 和 ELF)格式和术语的说明

C OpenMP 代码在 cygwin 上运行异常,但在 Linux 上运行正常

c++ - 当值部分不存在时使用 Boost Property Tree 读取 INI 文件

C++11 std::thread 给出错误:没有匹配的函数来调用 std::thread::thread

c++ - 在成员函数上使用 CreateThread 的问题

c - 反转单向链表

c++ - PIMAGE_EXPORT_DIRECTORY - 内存访问错误

linux - 我混淆了一些关于在 Linux 0.11 中的 boot/setup.s 文件中启用 PE 的汇编代码

c++ - 更正 YUV422 到 RGB 的转换