Главная страница
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.093 c
3-1154862962
serko
2006-08-06 15:16
2006.10.08
Найти далее и др.


2-1159093869
delphi_
2006-09-24 14:31
2006.10.08
2 вопроса по Paradox


15-1157556436
alex_***
2006-09-06 19:27
2006.10.08
Можно ли разрешить иметь огнестрельное оружие простым гражданам?


15-1158310115
Cyrax
2006-09-15 12:48
2006.10.08
Case-средства в серьёзных проектах


2-1158672632
RomanH
2006-09-19 17:30
2006.10.08
Директории-> поддиректории