Поделиться через


C28602

Предупреждение C28602: избегайте вызова SendMessageTimeout с HWND_BROADCAST

Средство анализа кода сообщает об этом предупреждении, если приложения используют SendMessageTimeout, даже если приложение запрашивает время ожидания для потока, равное всего 10 секундам. Функция не возвращается до тех пор, пока для каждого окна не истекло время ожидания. Приложение может быть заблокировано в течение времени, которое требуется каждому окну для ответа. Это связано с тем, что невозможно управлять временем отклика всех остальных HWND в системе.

Чтобы устранить эту проблему, рекомендуется использовать PostMessage , чтобы это не блокирующий вызов. Кроме того, можно избежать использования HWND_BROADCAST для направления сообщения в определенное окно.