c++ - 在 C++ 中使用它在内存中的起始地址编辑字符串

标签 c++ string edit inject memory-address

我真的希望以前没有人问过这个问题,但我的谷歌搜索没有任何结果,所以我想我会问的。

我正在编写一个小脚本,我将一个 DLL 注入(inject)到游戏中并编辑一个特定的字符串,该字符串在特定事件发生时显示。我找到了这个字符串在内存中的位置,并编写了一个基本的 sigscanning 函数来在运行时找到它。我现在的问题是,给定起始地址,我如何/可以用我自己的特定字符串替换这个字符串?

例如,字符串是“我喜欢煎饼”,我想将其替换为“煎饼太糟糕了,华夫饼最好吃!”。一个人会怎么做呢?

谢谢!

哦,是的,如果重要的话,源代码中的字符串是一个常量字符。我很确定它不会,但添加该信息也无妨!

最佳答案

如果您要替换的字符串至少与它的替换字符串一样长,那么它很简单:就地替换它。否则,您无法可靠地表达您对煎饼的厌恶和对华夫饼的喜爱。

关于c++ - 在 C++ 中使用它在内存中的起始地址编辑字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13372647/

相关文章:

c++ - 使用不同类型的分隔符从.text文件读取输入

c++ - 使用 brew、git 或内置 mpi 的 MPI_Comm_rank() 中的 MPI 段错误

string - Go:如何检查一个字符串是否包含多个子字符串?

java - 创建配置.yml 文件

netbeans - 是否可以在 Netbeans 7.1 中进行实时共同编辑?

C++读取然后编辑文本文件

c++ - 网络打印机的 DeviceCapabilities

python - 在 Caffe 中训练孪生网络

android - 如何使用 JSON 对象在 Android 中显示来自 MySQL 数据库的图像

r - 转换已解析字符串的编码