Это перевод The various ways of sending a message. Автор: Реймонд Чен.
Существует несколько вариантов функции SendMessage, но некоторые из них являются просто частным случаем других.
Простейшим вариантом является сама функция SendMessage, которая отправляет (send) сообщение и ждёт ответа.
Следующий уровень - это функция SendMessageTimeout, которая отправляет сообщение и ждёт ответа лишь указанное время. SendMessage - это просто переходник для SendMessageTimeout с временем ожидания, равным INFINITE.
Другая версия SendMessage - это SendNotifyMessage, которая похожа на SendMessage за исключением того, что она не ждёт ответа. Она возвращает управление немедленно и игнорирует любой возвращаемый результат.
Последняя функция в стиле SendMessage - это SendMessageCallback. Она отправляет сообщение и возвращает управление немедленно. Когда принимающий наконец вернёт ответ, вызовется указанная функция обратного вызова (callback).
SendNotifyMessage это заглушка к SendMessageCallback с callback-функцией, которая просто ничего не делает.
Вот так четыре функции отправки сообщений уживаются вместе.
Бонус-примечание: если вы используете любую из вышеуказанны функций для отправки сообщения в окно, принадлежащее текущему потоку, то вызов будет синхронным.
Прим.переводчика: SendNotifyMessage - это не то же самое, что PostMessage. Функции семейства SendMessage производят отправку (send) сообщений - т.е. прямой вызов оконной процедуры. Это не то же самое, что посылка (post) сообщения, при котором сообщение ставится в очередь.
Комментариев нет:
Отправить комментарий
Можно использовать некоторые HTML-теги, например:
<b>Жирный</b>
<i>Курсив</i>
<a href="http://www.example.com/">Ссылка</a>
Вам необязательно регистрироваться для комментирования - для этого просто выберите из списка "Анонимный" (для анонимного комментария) или "Имя/URL" (для указания вашего имени и ссылки на сайт). Все прочие варианты потребуют от вас входа в вашу учётку.
Пожалуйста, по возможности используйте "Имя/URL" вместо "Анонимный". URL можно просто не указывать.
Ваше сообщение может быть помечено как спам спам-фильтром - не волнуйтесь, оно появится после проверки администратором.
Примечание. Отправлять комментарии могут только участники этого блога.