Вниз
Скачать: CL | DM;

Как создавать объект при инитиализации только в run-time   Найти похожие ветки 

← →
aly   (2006-08-02 11:29) [0]

Есть bpl, в которой при инитиализации создается объект. Нужно, чтобы этот объект создавался только в run-time.


← →
Сергей М. ©   (2006-08-02 11:38) [1]

Что в дан.случае подразумевается под "инициализацией" ?


← →
Reindeer Moss Eater ©   (2006-08-02 11:47) [2]

Создай еще один класс. в инициализации бпл создавай его экземпляр.
в конструкторе смотри стэйт. если в нем нет csDesigning, то смело создавай свой компонент.


← →
Юрий Зотов ©   (2006-08-02 12:14) [3]

> Reindeer Moss Eater ©   (02.08.06 11:47) [2]
Всегда получится run-time даже при загрузке в IDE.

> aly
Косвенный, но достаточно достоверный способ:
if Application.MainForm.ClassName <> "TAppBuilder" then это_runtime;


← →
Сергей М. ©   (2006-08-02 12:32) [4]


> aly


При инициализации bpl следует определить, в чье адресное пространство она в тек.момент загружена.
Если в АП Делфи-процесса, то это design-time, иначе - ран-тайм.


← →
Юрий Зотов ©   (2006-08-02 12:50) [5]

Более надежная по сравнению с [3] модификация:

if AnsiSameText(GetEnvironmentVariable("DELPHI") + "\Bin\Delphi32.exe", Application.ExeName) then
 ShowMessage("design-time")
else
 ShowMessage("run-time");



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
15-1153461311
tButton
2006-07-21 09:55
2006.08.20
<select>


2-1153685169
Adios
2006-07-24 00:06
2006.08.20
Присвоение процедуры


11-1131533055
Ефременко Алексей
2005-11-09 13:44
2006.08.20
Модули, требующиеся для компиляции mirror.pas


3-1150200676
bon
2006-06-13 16:11
2006.08.20
id @ parent


15-1153382099
novoalex
2006-07-20 11:54
2006.08.20
Небольшой провайдер...




   Наверх