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

Вниз

Задачка (почти пятничная :)   Найти похожие ветки 

 
Loginov Dmitry ©   (2006-10-06 11:22) [0]

В модуле DBClients имеется класс TClientDataSet. Этот модуль используют несколько десятков других модулей. Потребовалось написать наследника от TClientDataSet, в котором перекрывается процедура сохранения изменений на сервере DoApplyUpdates.

TMyClientDataSet = class(TClientDataSet)
....
end;

Нужно, чтобы при упоминании класса TClientDataSet в любом модуле использовалась ссылка на мой класс TMyClientDataSet.

Т.е. чтобы было наподобие:

initialization
 Integer(TClientDataSet) := Integer(TMyClientDataSet);

но это не прокатывает.

Как можно решить проблему, не вынося класс TMyClientDataSet в отдельный модуль с последующим упоминанием его в конце списка uses других модулей?


 
Loginov Dmitry ©   (2006-10-06 11:39) [1]

Даже так не работает:

 PPointer(TClientDataSet)^ := PPointer(TMyClientDataSet)^;

выдает AV при запуске :)))

Кажется я что-то делаю не так :)))


 
clickmaker ©   (2006-10-06 12:15) [2]

UnregisterClass / RegisterClass?


 
clickmaker ©   (2006-10-06 12:17) [3]

или так
type
 TMyClientDataSet = class(TCustomClientDataSet)
  ....

 end;

 TClientDataSet  = class(TMyClientDataSet );


 
Desdechado ©   (2006-10-06 12:44) [4]

либо используй везде наследника и подключай в uses
либо скопируй исходный файл генофонда в папку с проектом и там уже правь генофонд



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

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

Наверх




Память: 0.47 MB
Время: 0.05 c
2-1160642469
Fostr
2006-10-12 12:41
2006.10.29
SQL: Parameter not found


2-1160791839
Incognito
2006-10-14 06:10
2006.10.29
Дождаться завершения выполнения другой функции


15-1159447965
Ученик чародея.
2006-09-28 16:52
2006.10.29
В наших вузах программистов учат всякой ерунде


3-1157462650
_Le_
2006-09-05 17:24
2006.10.29
BDS 2006, QReport


2-1160993775
Max_lbp
2006-10-16 14:16
2006.10.29
Регистрация расширений файлов