Главная страница
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.065 c
2-1161061981
wipr
2006-10-17 09:13
2006.10.29
Проблемы с отображением данных из БД в QuickReport


4-1150359925
MAXLMN
2006-06-15 12:25
2006.10.29
Нотификационное сообщение - файл закрыт


1-1158552878
dm37
2006-09-18 08:14
2006.10.29
COM-порт задержка


2-1160859990
redlord
2006-10-15 01:06
2006.10.29
процедуры с одним именем но с разными типами переменных


9-1137663613
Control
2006-01-19 12:40
2006.10.29
ShareWare игры