C28604
Aviso C28604: evite chamar SendMessageTimeout com SMTO_ABORTIFHUNG com um tempo limite de 0
A ferramenta Análise de Código relata esse aviso quando os aplicativos chamam SendMessageTimeout com o sinalizador SMTO_ABORTIFHUNG e um período de tempo limite de zero. Usar SendMessageTimeout dessa forma pode ser problemático porque o período de tempo limite não tem efeito e a chamada é tratada como uma chamada de bloqueio.
Especifique um valor diferente de zero para o período de tempo limite.
Exemplo
A chamada de função a seguir pode fazer com que o processo não responda indefinidamente.
fNeedsCallbackEvent = (0 != SendMessageTimeout(
_hwnd,
WM_NULL,
0,
0,
SMTO_ABORTIFHUNG,
0,
&dwResult));
A chamada de função a seguir não tem esse problema.
fNeedsCallbackEvent = (0 != SendMessageTimeout(
_hwnd,
WM_NULL,
0,
0,
SMTO_ABORTIFHUNG,
1000,
&dwResult));