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

Вниз

дочернее окно на WinAPI   Найти похожие ветки 

 
Shiza ©   (2003-12-05 12:37) [0]

Как создать дочернее окно для одной программы из другой dll-ки, вернее что передать в качестве параметра hInstance функции CreateWindow.


 
BiN ©   (2003-12-05 12:59) [1]

Ты в дельфи пишешь - значит и передавай Hinstance

можешь, конечно, и GetModuleHandle(nil)


 
Shiza ©   (2003-12-05 16:04) [2]

Вот код, где ошибка?:

var
h,hinst:HWND;
r: TRECT;

begin
GetClientRect(ParentWin,r);
hinst:=GetModuleHandle(nil);
h:=CreateWindow("ТRichEdit","",WS_CHILD or ES_MULTILINE or ES_READONLY or WS_HSCROLL or WS_VSCROLL or ES_NOHIDESEL,r.left,r.top,r.right,r.bottom,ParentWin,0,hinst,nil);
result:=h;
{Application.CreateForm(TForm1, Form1);
form1.Caption:=inttostr(h);
form1.Show;}//код в кавычках для проверки хендла.


 
BiN ©   (2003-12-05 16:32) [3]

первое, что бросается в глаза - "TRichEdit"
такой класс может быть и незарегистрированным
ты лучше исходники Forms.pas глянь


 
DVM ©   (2003-12-05 16:34) [4]

Можно и ничего не передавать - все равно работать будет.


 
Игорь Шевченко ©   (2003-12-06 00:30) [5]

Из справки по CreateWindow:

hInstance
Windows 95/98/Me: Handle to the instance of the module to be associated with the window.
Windows NT/2000/XP: This value is ignored.

В Win9x надо передавать тот Instance, в котором выполняется CreateWindow, в других без разницы, что передавать.


> где ошибка?:


> hinst:HWND

Это не ошибка, но небрежность.


 
Shiza ©   (2003-12-08 16:25) [6]

Удалено модератором



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
8-29478
Юрий Ж.
2003-09-19 08:53
2004.02.10
DirectSound?


14-29561
Soft
2004-01-13 03:37
2004.02.10
Фильм


4-29671
Gilk
2003-12-04 10:13
2004.02.10
Как по расширению файла получить Handle иконки


7-29646
Babay
2003-11-21 11:20
2004.02.10
Как получить Список пользователей домена ?


1-29347
race1
2004-01-28 16:06
2004.02.10
Service