替换EXE文件中字符串的问题

solohac 2012-03-20 03:57:24
大家好,小弟请教一个替换EXE文件中字符串的问题

在我生成的一个C#程序:test.exe中有这样一个字符串:
string testStr = "###1234567890###";

我想要写一个程序把 ###1234567890### 替换为 [ 一个不定长度的字符串](当然字符串长度不超过###1234567890###的长度)

例如:我想把testStr替换为 hello,那么我在内存中找到了###1234567890###,并且替换了成为 hello34567890###.
如果我能在hello后面加入一个结束符,那么 testStr就变成了hello,而不是现在的 hello34567890###。

在C++中,只需要在hello后面写入一个‘\0’就可以了,但是在c#中,似乎这样做并不正确。
请各位指点一二,谢谢
...全文
156 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
solohac 2012-03-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bdmh 的回复:]
先去看看exe的结构吧
[/Quote]
我觉得是不是c#生成的exe文件中,string的内容不是由结束符决定的,而是记录有string长度?
bdmh 2012-03-20
  • 打赏
  • 举报
回复
先去看看exe的结构吧

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧