Форум: "WinAPI";
Текущий архив: 2009.11.29;
Скачать: [xml.tar.bz2];
ВнизПочему SendMessage работает, а PostMessage нет? Найти похожие ветки
← →
p_evghenii (2007-12-20 16:28) [0]Посылаю всем окнам сообщение:
SendMessage(HWND_BROADCAST,FM_Stop, pi.dwProcessId,0);
При этом все отрабатывает отлично. В другом приложении проверял, сообщение доходит. Но SendMessage мне не подходит, т.к. приложение ждет, пока сообщение дойдет до всех. Поэтому поменял на PostMessage(HWND_BROADCAST,FM_Stop, pi.dwProcessId,0).
Теперь приложение не ждет, а продолжает свой ход, но сообщение не доходит до другого окна.
Как победить?
И еще: если посылаю SendMessage(HWND_BROADCAST,FM_Stop, pi.hProcess,0);, где pi (PROCESS_INFORMATION) -процесс, созданный при помощи CreateProcess, то перехватывая это сообщение в другом приложении и проверяя ExitCodeProcessResult := GetExitCodeProcess(hProcess, lpExitCode); возвращает False, и Getlasterror = 6, что обозначает, что неверный хендл, хотя цифры и в одном и в другом приложении одинаковые...
← →
Сергей М. © (2007-12-20 16:32) [1]
> сообщение не доходит до другого окна
Оно, это другое окно, тебе об этом само сообщило по великому секрету ?)
> обозначает, что неверный хендл
И правильно обозначает.
Хэндл есть понятие не глобально уникальное.
← →
Сергей М. © (2007-12-20 16:34) [2]
> SendMessage мне не подходит, т.к. приложение ждет
На синхронном SendMessage свет клином сошелся ?
Есть же модификации этого вызова - SendMessageXXX() ..
← →
p_evghenii (2007-12-20 16:40) [3]Спасибо, подошло SendNotifyMessage
← →
Сергей М. © (2007-12-20 16:54) [4]Про хэндлы, надо понимать , тоже проникся ?
← →
имя (2008-10-06 12:07) [5]Удалено модератором
← →
имя (2008-10-06 12:08) [6]Удалено модератором
← →
имя (2008-10-06 12:08) [7]Удалено модератором
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2009.11.29;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.004 c