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

Вниз

Как перечислить зарегистрированные классы   Найти похожие ветки 

 
atruhin ©   (2007-02-04 22:15) [0]

Т.е. классы зарегестрированные RegisterClass перечислить в рантайм?


 
MBo ©   (2007-02-05 06:17) [1]

Зарегистрированные классы хранятся в приватном списке, так что легальных способов добраться к ним нет, а хакерские - зависят от версии Дельфи.
Из примитивного - создать список имен известных классов и проверять Find/GetClass.


 
MBo ©   (2007-02-05 06:39) [2]

хм... в Classes обнаружил TClassFinder


procedure TForm18.FormCreate(Sender: TObject);
begin
 RegisterClass(TButton);
end;

procedure TForm18.GetC(AClass: TPersistentClass);
begin
 ListBox1.Items.Add(AClass.ClassName);
end;

procedure TForm18.Button4Click(Sender: TObject);
var
 CF: TClassFinder;
begin
 CF := TClassFinder.Create();
 CF.GetClasses(GetC);
 CF.Free;
end;


 
Джо ©   (2007-02-05 06:50) [3]

> [2] MBo ©   (05.02.07 06:39)
> хм... в Classes обнаружил TClassFinder

Ого. Забавно.

[offtop]
TForm18 — что же за пакость в этих новых BDS с именованием классов форм?
[/offtop]


 
MBo ©   (2007-02-05 07:48) [4]

>что же за пакость в этих новых BDS с именованием классов форм?

Глобальная сквозная нумерация ;))

При создании нового проекта в общей папке Projects дается очередное имя проекту и формам, поэтому для тестовых проектов у меня нумерация растет быстро.


 
atruhin ©   (2007-02-05 14:57) [5]

Большое спасибо. А то пол вечера рыл инет, да литературу ничего.


 
evvcom ©   (2007-02-06 10:05) [6]

> [5] atruhin ©   (05.02.07 14:57)

Рыть надо генофонд! Там гораздо больше инфы.



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

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

Наверх




Память: 0.48 MB
Время: 0.029 c
3-1168459764
Kley
2007-01-10 23:09
2007.04.01
Поле в отчете


1-1171001707
Choco
2007-02-09 09:15
2007.04.01
Изменить размер видео в MediaPlayer


15-1173445639
oldman
2007-03-09 16:07
2007.04.01
Как хорошая идея становиться кривой...


3-1168593221
Сергей И
2007-01-12 12:13
2007.04.01
удалить запись бд через SQL запрос


15-1173175507
Ксардас
2007-03-06 13:05
2007.04.01
Не подскажите сайт...