Главная страница
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.057 c
1-1158908490
Василий Блаженный
2006-09-22 11:01
2006.10.29
TTrayIcon &amp; baloon tips


2-1160760529
anton773
2006-10-13 21:28
2006.10.29
фокус ввода


1-1158407293
Прогер
2006-09-16 15:48
2006.10.29
Unicode <=> ANSI


2-1160637215
md
2006-10-12 11:13
2006.10.29
unit


6-1149249021
Nuts
2006-06-02 15:50
2006.10.29
Как узнать какие файлы открыты на компьютере по сети?