Блог человека, который 18-ть лет программирует на Delphi. И 25 лет программирует вообще. VCL, UML, MDA, тесты. Это не "учебник", это - "заметки на полях".
NameRec: Там есть пара ошибок в реализации :-) Но этот патч должен всё поправить:
4128c4137,4140 < Finalize(obj.VVariant^); --- > begin > Finalize(obj.VVariant^); > FreeMem(obj.VVariant); > end; 6429c6441 < while (compare(get(i),obj) <> 0) and (not atEnd(i)) do --- > while (not atEnd(i)) and (compare(get(i), obj) <> 0) do
Патч относится к версии, полученной с сайта Embarcadero. На SourceForge лежит не самый последний вариант. Я это к тому, что если применить патч с помощью patch.exe не получится, это можно сделать вручную, поскольку заменяемые строки уникальны в DeCAL.pas.
Вот более новая версия https://bitbucket.org/hovadur/decal - в ней я сделал работу с linux и в 64-битах. Она работает как в windows, linux lazarus, так и в delphi 7, delphi xe2.
NameRec: Там есть пара ошибок в реализации :-)
ОтветитьУдалитьНо этот патч должен всё поправить:
4128c4137,4140
< Finalize(obj.VVariant^);
---
> begin
> Finalize(obj.VVariant^);
> FreeMem(obj.VVariant);
> end;
6429c6441
< while (compare(get(i),obj) <> 0) and (not atEnd(i)) do
---
> while (not atEnd(i)) and (compare(get(i), obj) <> 0) do
Патч относится к версии, полученной с сайта Embarcadero. На SourceForge лежит не самый последний вариант.
Я это к тому, что если применить патч с помощью patch.exe не получится, это можно сделать вручную, поскольку заменяемые строки уникальны в DeCAL.pas.
Вот более новая версия https://bitbucket.org/hovadur/decal - в ней я сделал работу с linux и в 64-битах. Она работает как в windows, linux lazarus, так и в delphi 7, delphi xe2.
ОтветитьУдалитьСПАСИБО. ОБЯЗАТЕЛЬНО посмотрю. Хотя мне лично уже - не сильно актуально. Разве что только 64-бита.
Удалить