Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.26;
Скачать: CL | DM;

Вниз

Отличия работы RTTI в Delphi for NET от Delphi for Win32   Найти похожие ветки 

 
GrayWolf   (2007-06-16 15:25) [0]

Здравствуйте.

У меня есть приложение, написанное на Delphi 7, я его хочу портировать под
Delphi 8 (которая .NET). В приложении активно используется система RTTI, в частности,
есть такой участок кода, где необходимо, имея переменную типа Info: PPropInfo,
и ссылку на объект, который содержит property, описываемое этой переменной, определить,
является ли данное property read-only, write-only, или же оно и read-, и write-able.
В коде для Delphi 7 это делалось через проверку на nil Info.SetProc и Info.GetProc.
В справке для Delphi 8 сказано, что SetProc и GetProc остались:
"GetProc and SetProc are method pointers for the methods that get and set the property value. These are methods of the component whose property is being edited."
(Статья под заголовком "TPropInfo Class")
Однако в классе TPropInfo их нет, попытка записи Info.GetProc вызывает ошибку компиляции
неизвестный идентификатор, и поиск слов "GetProc" и "SetProc" по всем файлам
*.pas в каталоге source в инсталляции Delphi 8 не нашел ни одного вхождения.
Это неточность в справке или я что-то делаю не так? Каким образом можно узнать, есть ли
Get и Set- методы для данного свойства объекта в Delphi 8?


 
Eraser ©   (2007-06-16 15:33) [1]

> [0] GrayWolf   (16.06.07 15:25)

под .net все совершенно по-другому.. там своя rtti.



Страницы: 1 вся ветка

Текущий архив: 2007.08.26;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.026 c
2-1185955901
Glivera
2007-08-01 12:11
2007.08.26
Создание формы


4-1172688389
Eraser
2007-02-28 21:46
2007.08.26
CreateProcessAsUserW и ошибка ERROR_PIPE_NOT_CONNECTED


2-1186372130
KPV-10k
2007-08-06 07:48
2007.08.26
Выпадающий список в DBComboBox


15-1185414465
Зет
2007-07-26 05:47
2007.08.26
Как узнать какой пункт из case в record выбран?


2-1186311698
Reals
2007-08-05 15:01
2007.08.26
StringReplace не работает для строки в Unicode