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

Вниз

Эмуляция Delphi IDE   Найти похожие ветки 

 
Dr. Genius   (2006-10-11 18:17) [0]

Здравствуйте!

Хочу сделать эмулятор Delphi IDE (сами понимаете, для какой цели).

Обычно в платных компонентах идет проверка наличия запущенного Delphi IDE, и если он не обнаружен, выводится сообщение о незарегистрированной копии. Проверка эта в большинстве случаев реализуется вот как:

function IsDelphiRun: Boolean;
begin
 Result := (FindWindow("TAppBuilder", nil) <> 0)
   and (FindWindow("TAlignPalette", nil) <> 0)
   and (FindWindow("TPropertyInspector", nil) <> 0);
end;

Я подумал, а что если сделать эмуляцию этих окон ("TAppBuilder", "TAlignPalette" и "TPropertyInspector") с помощью CreateWindow? Вот как я это сделал:

CreateWindow("TAppBuilder", "Builder", 1, 0, 0, 0, 0, 0, 0, 1, nil);
CreateWindow("TAlignPalette", "Palette", 1, 0, 0, 0, 0, 0, 0, 1, nil);
CreateWindow("TPropertyInspector", "Inspector", 1, 0, 0, 0, 0, 0, 0, 1, nil);

Но при проверке оказалось, что Delphi IDE не эмулируется (хотя не могу говорить точно, так как я проверял только на одном платном компоненте; других у меня нет). Может, я задаю не те значения в качестве аргументов.


 
Ketmar ©   (2006-10-11 18:24) [1]

>[0] Dr. Genius 11-Oct-2006, 18:17
>сами понимаете, для какой цели
не понимаю.


 
Джо ©   (2006-10-11 18:26) [2]

> [1] Ketmar ©   (11.10.06 18:24)
> не понимаю.

Или "не приемлю"? ;)


 
Ketmar ©   (2006-10-11 19:42) [3]

>[2] Джо(c) 11-Oct-2006, 18:26
>Или "не приемлю"? ;)
нет. не понимаю.


 
DrPass ©   (2006-10-11 22:08) [4]


> CreateWindow("TAppBuilder", "Builder", 1, 0, 0, 0, 0, 0,
>  0, 1, nil);

Мне всегда казалось, что перед вызовом CreateWindow следовало бы зарегистрировать соответствующий класс с помощью RegisterClass...



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

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

Наверх




Память: 0.47 MB
Время: 0.033 c
2-1160647533
svt
2006-10-12 14:05
2006.10.29
Подскажите пожайлусата как ограничить ввод в edit только


8-1143444700
WondeRu
2006-03-27 11:31
2006.10.29
Как организовать прозрачное шифрование траффика в Indy 9?


2-1160462004
mfender
2006-10-10 10:33
2006.10.29
Пустой TXMLDocument или, как создать корневой узел?


15-1158748854
Колдун
2006-09-20 14:40
2006.10.29
Нумерованный список в RichEdit


15-1160051232
Kolan
2006-10-05 16:27
2006.10.29
Дизайн - хорошая штука, но как его реализовать.