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

Вниз

Наследование   Найти похожие ветки 

 
ychenick ©   (2006-09-06 19:41) [0]

Необходимо добиться эффекта что б перед сохранением данных компоненет TTable шифровал их, а при чтении - дешифровал. Реално ли это сделать? Я не уверен, но думаю что нужно использовать наследование что б переопределить ф-цию, но, к сожалению, так и не понял какая именно ф-ция отвечает за сохранение и считование данных.

Собственно, прошу помочь реализовать.

Может кто подсказать статью о наследование в Delphi с большим количеством примеров?


 
Virgo_Style ©   (2006-09-06 20:58) [1]

Компонент TTable не занимается чтением и-или сохранением данных


 
ychenick ©   (2006-09-06 21:06) [2]

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

Рас не TTable значить работать нужно с DataSource?


 
Пусик ©   (2006-09-06 23:09) [3]


> Рас не TTable значить работать нужно с DataSource?


См. TBDEDataSet.InternalOpen и иже с ним.


 
DrPass ©   (2006-09-07 00:10) [4]

ИМХО, тут не нужно заморачиваться с созданием своих компонент-наследников. Достаточно просто поместить код расшифровки/шифровки в обработчики OnGetText/OnSetText для нужных полей


 
vodvorezlaya   (2006-09-07 08:42) [5]


> Необходимо добиться эффекта что б перед сохранением данных
> компоненет TTable шифровал их, а при чтении - дешифровал.
>  Реално ли это сделать?

Да запросто, берёшь данные, по алгоритму шифруеш и записываешь.

Можно это дело немного упростить переписыванием.
Берёшь и пишешь

type
 TMyTable = class(TTable)
 private
 procedure AsInteger; dynamic;
   { Private declarations }
 public
   { Public declarations }
 end;

implementation

Procedure AsInteger;
begin
inherited;
//после inherited
//я не знаю что здесь, но добавляешь код шифрования
end;
Неплохая статья по этой теме с продолжением:
http://www.interface.ru/borland/d5prraz1.htm


 
ychenick ©   (2006-09-15 16:59) [6]

Всем спасибо, буду мучаться


 
MsGuns ©   (2006-09-15 17:16) [7]

Я бы не засовывал такие фещи, как инкрип-декрипт в компоненту.
- Во-первых потому, что надо будет во всех приложениях использовать именно TTable, что уже само по себе уродство
- Во-вторых, при изменении алгоритма надо будет лазать в компонент, править его, отлаживать, потому заново инсталить в Делфу на всех компьютерах, где может понадобиться компиллинг любого из приложений, юзающих данных компопнент.
- В-третьих, все фичи, которые могут понадобиться при развитии, в компонент не впихнешь.
- В-четвертых, если завтра потребуется перйти с парадокса на Interbase или мсскл, то что, надо всовывать эту функцию в соответствующие объектф доступа к этим базам ?

Подобные вещи лучше реализовать через "системные" библиотеки, юзаемые всеми разработчиками и расположенные на общем сетевом ресурсе. Любое изменение любой процедуры библиотеки требует лишь перекомпиляцию проектов. При этом не затрагивается ни тип БД, ни используемые компоненты доступа.



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

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

Наверх




Память: 0.48 MB
Время: 0.102 c
6-1147542695
RUNaum
2006-05-13 21:51
2006.10.08
Распаковать gzip-архив


15-1158501484
NIK2006
2006-09-17 17:58
2006.10.08
Проги для наладонников ?


15-1157549352
Новый_Юзер
2006-09-06 17:29
2006.10.08
как заменить картинку при загрузке WindowsXP?


1-1156939185
matyx
2006-08-30 15:59
2006.10.08
функция GetSystemTime выдаёт неправильное время


15-1158389244
cyborg
2006-09-16 10:47
2006.10.08
старые программы тесты