C28604
Предупреждение C28604: избегайте вызова SendMessageTimeout с SMTO_ABORTIFHUNG со временем ожидания 0
Средство анализа кода выводит это предупреждение, когда приложения вызывают SendMessageTimeout с флагом SMTO_ABORTIFHUNG и периодом времени ожидания, равным нулю. Использовать SendMessageTimeout таким образом может быть проблематично, так как время ожидания не влияет, а вызов обрабатывается как блокирующий вызов.
Укажите ненулевое значение для периода ожидания.
Пример
Следующий вызов функции может привести к тому, что процесс не будет отвечать бесконечно.
fNeedsCallbackEvent = (0 != SendMessageTimeout(
_hwnd,
WM_NULL,
0,
0,
SMTO_ABORTIFHUNG,
0,
&dwResult));
Следующий вызов функции не имеет этой проблемы.
fNeedsCallbackEvent = (0 != SendMessageTimeout(
_hwnd,
WM_NULL,
0,
0,
SMTO_ABORTIFHUNG,
1000,
&dwResult));