Цитата:
Сообщение от poli-smen
Видимо проблема в том, что в Delphi XE5 каждый символ строки занимает 2 байта, а размер буфера ты вычисляешь в символах, т.е. в 2 раза меньше необходимого.
|
Yahoooo как я не догадался ведь пробелы же это один байт а символы по 2
Решено!
Код:
var
Buffer: Pointer;
BufSize: word;
i, j, k: Integer;
s: string;
p: PChar;
begin
{подготовим буфер к записи}
BufSize := 0;
for i := 0 to list.Count -1 do
inc(BufSize, Length(list[i]) * 2);
inc(BufSize);
GetMem(Buffer, BufSize);
...
..
..
и один лишний пробел добавляем сюда
Код:
s1.Add('d:\pagefile.sys 0 0 ');
и все