Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.06.11;
Скачать: [xml.tar.bz2];

Вниз

проверка существования окна с определенным хендлом   Найти похожие ветки 

 
Mr tray   (2006-05-27 01:03) [0]

мне надо послать сообщение в окно, хендл которого у меня есть. если это окно существует, то оно пошлет сообщение на первое окно, тем самым поддверждая своё существование. но оно может и не существовать. я организовал этот механизм, используя postmessage. но с момента посылки проверочного сообщения от первого окна второму до принятия подтверждающего сообщение может пройти некоторое время, что для меня недопустимо (так как в зависимости от результата проверки нужно выполнять определенный код). как мне сделать функцию, которая выглядит примерно так
function checkform(wnd:hwnd;timeout:cardinal):boolean;
где wnd - хендл окна, которое может существовать, а может и не существовать, timeout - предел ожидания ответа, result - итог (был ли получен ответ).


 
Rial ©   (2006-05-27 01:23) [1]

Используй
SendMessage.
Он ждет окончания передачи.

первая процедура - обработчик подтверждающего события.
С не, я думаю, все просто.
В ней делаем кроме всего прочего MyFalg:=True;

Перед посылкой сообщения клиенту
MyFlag:=False;

Теперь после отправки сообщения
N:=GetTickCount;
While (Not MyFlag)and(GetTickCount-N<MyConst)do begin
Sleep(5);
Application.ProcessMessages;
end;

Тут MyConst - макс. время ожидания.


 
GanibalLector ©   (2006-05-27 01:45) [2]

Перед посылкой еще раз найди его : FindWindow,FindWindowEx


 
begin...end ©   (2006-05-27 05:54) [3]

IsWindow -- оно не проще?


 
Rial ©   (2006-05-27 15:44) [4]

ИМХО, спрашивалось именно про ожидание в течение некорого времени
после посылки сообщения. Вполне реальная проблема,
в которой IsWindow вовсе не при делах.
Просто чема вопроса и его содержание немного не совпадают.


 
Mr tray   (2006-05-27 18:05) [5]

Дело в том, что может быть, объект с данным мне хендлом и может являться окном, да только не искомым. чтобы определить, искомое ли окно обладает имеющимся у меня хендлом, я посылаю сигнал. получу ответ - значит есть контакт, не получу - не контакта.


 
Mr tray   (2006-05-27 18:09) [6]

Rial ©   (27.05.06 01:23) [1]
спасибо, кажется я вас понял....



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

Форум: "Начинающим";
Текущий архив: 2006.06.11;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.01 c
2-1148287944
WebSqlNeederr
2006-05-22 12:52
2006.06.11
Как разбить строку по разделителю ""


2-1148490667
M*O*D*E*R
2006-05-24 21:11
2006.06.11
График


15-1147932648
Nic
2006-05-18 10:10
2006.06.11
Чем можно скомпилировать


3-1145353609
Pazitron_Brain
2006-04-18 13:46
2006.06.11
Delphi &amp; MySQL


2-1148385586
skandri
2006-05-23 15:59
2006.06.11
Вырезание части bmp





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский