用C ++编辑十六进制

时间:2010-08-11 22:25:51

标签: c++

我们假设我想要更改可执行文件的000F5344地址中的内容。我该怎么做呢?

2 个答案:

答案 0 :(得分:13)

@Pablo Santa Cruz提供了一种很好的方式,但在C语言中。如果您更喜欢纯C ++,请按以下方式进行:

  1. 打开文件: fstream :: open (记得使用二进制标志)
  2. 设置放置指针位置: fstream :: seekp
  3. 在put指针位置写入数据: fstream :: put
  4. 关闭文件: fstream :: close
  5. 这绝不比C版好。

答案 1 :(得分:11)

以下四步解决方案:

  1. 使用二进制标志打开文件(使用fopen)。
  2. 移至地址(偏移)(使用fseek)。
  3. 撰写您的数据(使用fwrite)。
  4. 关闭文件(使用fclose)。
  5. 使用谷歌获取有关上述四个函数调用的帮助。也适用于 C