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

Вниз

Как узнать handle окна, пославшего сообщение   Найти похожие ветки 

 
sergio123   (2002-09-30 17:45) [0]

Программа не VCLная. Есть что-то типа того:

MyMsg:=RegisterWindowMessage(MyMessage);

Сообщение посылается так:
SendMessage( HWND_BROADCAST,MyMsg,1234,1234);

Обрабатывается так:

function WindowProc(hWnd, uMsg, wParam, lParam: Integer): Integer; stdcall;
begin
Result := DefWindowProc(hWnd, uMsg, wParam, lParam);
if uMsg = WM_DESTROY then Halt;
if (uMsg = MyMsg) and (wParam = 1234) then
begin
...... тут нужен handle, кто его послал ...........
end;
end;

Как узнать handle окна, пославшего сообщение MyMsg?


 
Zz_   (2002-09-30 18:22) [1]

Так посылай его в lParam


 
sergio123   (2002-09-30 18:36) [2]

To Zz_
Ты мои мысли читаешь на расстоянии :)? Именно так я сейчас и делаю, но я просто думал есть какой-то лучший способ, предоставляемый самой операционкой. И к тому же если мне в lParam тоже какое-нибудь значение надо передать?


 
Polevi ©   (2002-09-30 18:42) [3]

wParam и lParam все равно не хватит на все случаи
WM_COPYDAYA используй


 
vidiv   (2002-10-08 09:47) [4]

А я делаю вот так:
type Trecdata=record
{тута всякой х...и}
end;


var a:TRecData;
begin
a:={....};
sendmessage(hwnd_broadcast,mymgs,handle,lparam(a));
end;

а в приемнике:

var b:TRecData;
begin
b:=TRecData(lparam);
{и юзай}
end;


 
Polevi ©   (2002-10-08 10:40) [5]

>vidiv (08.10.02 09:47)
не надо давать дурных советов



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
4-59496
REA
2002-10-08 13:49
2002.11.18
Минимизация формы


1-59113
_acme
2002-11-08 07:26
2002.11.18
Как можно на форме разместить текстуру. (На подобии Opera 6)


3-59011
cypher
2002-10-28 22:54
2002.11.18
Проблема с MS SQL Server 2000


1-59105
murzikN
2002-11-04 13:10
2002.11.18
ListBox с числом строк больше 32 К. Кто знает как сделать?


3-59037
Veronika
2002-10-29 12:22
2002.11.18
Как защитить книгу Excel от просмотра?