Delphi新手问两个很初浅的问题.(1)有一个exe文件,假设我想把他offset位置$00444444-$00444446的十六进制值分别修改为$11 $12 $13, 然后在同一目录下生成另外一个exe文件,怎么写代码? 我用TMemoryStream试了好久,搞不定.生成的文件大了一倍.(2)怎么copy 一个文件夹到为另一个文件夹(包括文件夹内的所有内容,假设源文件夹和复制后的文件夹在同一目录).希望不吝赐教. 最好来两段代码说明. 新人钱少,谢谢先!
调试欢乐多
var buf:array[0..2] of Byte;
begin
buf[0]:=$11;
buf[2]:= $12;
buf[3]:= $13;
mms:=TMemoryStream.Create;
mms.LoadFromFile('your exe');
mms.Position :=$00444444;
mms.Write(buf,3);
mms.SaveToFile('your exe.bak');
mms.Free ;end;
我之前就是这样写的,生成的文件大了一倍, 刚完全套用你的试了,还是生成的文件大了一倍. 用winhex查看了一下,发现修改的三个字节在文件最后面.另外,没有人告诉我怎么 copy 文件夹吗?