Со времени Delphi 5 произошли значительные изменения в интерфейсах времени разработки. На самом деле самое большое единственное изменение в API времени разработки произошло между Delphi 6 и Delphi 5. Проверьте на веб-странице gExperts информацию OTA здесь .
Начиная с Delphi 6, существует один уровень изменений:
Переименование всех единиц в предложении дизайна. Старые имена с "Dsgn" переименованы. То, что раньше было DsgnIntf, теперь это DesignIntf, DesignEditors, DesignWindows и т. Д.
Некоторые уведомления во время разработки пропали. DesignWindows была изменена для использования интерфейсов.
Я пытался собрать в Delphi 2007, который почти такой же, как Delphi 2005, и где я застрял в этой точке:
procedure ComponentDeleted(comp: TComponent);override;
Этого метода больше нет, и теперь изменение заключается в том, что вам нужно использовать интерфейс IFormDesigner, и вам нужно вызывать RegisterDesignNotification
и UnregisterDesignNOtification
в вашем помощнике или конструкторе и деструкторе окна.
Помимо этого, я вижу, по крайней мере, 10 или 20 других вещей, которые нуждаются в исправлении, кроме переименования модулей, многие функции перемещаются из одного места в другое, и типы меняются, на многие вещи, которые были действительными типами (TFormDesigner), теперь ссылаются через интерфейсы (IDesigner).
Это вне моей способности портировать это (связанные с TComponentList изменения в IDesignSelection не в моей глубине), и я думаю, что если кто-то сможет это сделать, то это будет кто-то с опытом работы во время разработки, включая людей, которые работают в gExperts. и другие вещи времени разработки.