请教:CopyMemory 的用法?谢谢!
procedure TForm1.Button3Click(Sender: TObject);
var
s1:string;
s2:string;
filename: string;
m1:TMemoryStream;
buffer:array of byte;
begin
s1:= '123 ';
s2:= '456 ';
filename:=ExtractFilePath(paramstr(0))+ '01.bmp ';
m1:=m1.Create;
m1.LoadFromFile(filename);
//现在怎么把 字符串 '123 ' '456 ' 和 流读到 数组 buffer;
end;
//现在怎么把 字符串 '123 ' '456 ' 和 流读到 数组 buffer;
希望通过 CopyMemory 来实现?
各位大哥这样的程序要怎么写?
谢谢!
[解决办法]
setlength(buffer, 6+m1.size);
b := @buf[0];
CopyMemory(b, @s1[1], length(s1));
inc(b, 3);
CopyMemory(b, @s2[1], length(s1));
inc(b, 3);
Stream.Write(b, Stream.Size);
不知道对不对
[解决办法]
替universe(孤帆) 补充一下:
var
s1 : string;
s2 : string;
filename: string;
m1 : TMemoryStream;
buffer : array of byte;
b : PByte;
begin
......
setlength(buffer, 6+m1.size);
b := @buf[0];
CopyMemory(b, @s1[1], length(s1));
inc(b, 3);
CopyMemory(b, @s2[1], length(s1));
inc(b, 3);
Stream.Seek(0, soFromBeginning);
Stream.Write(b, Stream.Size);
end;