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

Вниз

перехват изменения свойства объекта   Найти похожие ветки 

 
LastLamer ©   (2003-10-26 23:00) [0]

Возможно ли перехватить изменение published свойства объекта
в RunTime не используя обработчики событий этого объекта? (возможно используя RTTI информацию?)


 
default ©   (2003-10-26 23:13) [1]

"не используя обработчики событий этого объекта"
как ты себе это интересно представляешь?
только, НАВЕРНО, если сохранять периодически значения published свойств и также периодически сравнивать с текущими...


 
default ©   (2003-10-26 23:24) [2]

кстати есть идея - может она и бредовая, НО:
так как св-ва publuished - для них генерится RTTI и ОНА меняется при(не вся конечно, значения только) изменении таких свойств, может как-то запретить доступ к этим данным чтоб при попытке записи к этим свойствам происходил exception?только надо уметь "выруливать" из этого exception-а производя нужные действия...покопай в эту сторону


 
LastLamer ©   (2003-10-26 23:38) [3]

я поэтому и спрашиваю возможно это или нет
ведь инспектор объектов в Run-time прекрасно все отслеживает


 
LastLamer ©   (2003-10-26 23:45) [4]

вообще у меня такая идея сначала была

PPropInfo = ^TPropInfo;
TPropInfo = packed record
PropType: PPTypeInfo;
GetProc: Pointer;
SetProc: Pointer;
StoredProc: Pointer;
Index: Integer;
Default: Longint;
NameIndex: SmallInt;
Name: ShortString;
end;

то есть адрес SetProc для данного объекта мы знаем
вопрос в том как перехватить обращение к этой процедуре
извне


 
default ©   (2003-10-27 00:04) [5]

можешь вместо SetProc поставить адрес своей подпрограммы только с теми же параметрами, чтобы потом дать возможность отработать оригиналу, адрес которого ты сохранишь заранее - фигня в том, что придётся писать подпрограммы для каждого свойства



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
11-41120
microlab
2003-02-16 20:20
2003.11.13
Нашёл необычное решение для создания ярлыков


3-40922
Olivka
2003-10-19 14:42
2003.11.13
FIBplus - не находит новое поле


3-41065
Sugrob
2003-10-23 19:38
2003.11.13
SELECT!!! Извлечение данных по дню месяца и месяцу года.


4-42303
pirat
2003-09-07 00:06
2003.11.13
как сделать PeekThreadMessage ?


3-40804
Rod
2003-10-22 12:47
2003.11.13
Активизация роли приложения SQL2000 через BDE