Como alterar a cor de sublinhado em um controle Rich Edit (Win32 / C)
Estou procurando uma maneira de destacar o vermelho em um controle Rich Edit (estou usando a versão 4.1 com Msftedit.dll). Eu sou capaz de produzir rabiscos sublinhados com este código:
CHARFORMAT2 format;
format.cbSize = sizeof(format);
format.dwMask = CFM_UNDERLINETYPE;
format.bUnderlineType = CFU_UNDERLINEWAVE;
SendMessage(hWndEdit,EM_SETCHARFORMAT, SCF_SELECTION, (LPARAM)&format);
A documentação do MSDN não especifica como alterar a cor dos sublinhados, apenas o texto (com sublinhados) e o fundo do texto. Eu encontrei um código que diz para usar o nibble inferior para o tipo de sublinhado (CFU_UNDERLINEWAVE) e o superior para cor. Então eu tentei:
format.bUnderlineType = CFU_UNDERLINEWAVE | 0x50;
Mas isso não funciona.
ATUALIZAR
Eu testei este código com a versão 3.0 (Riched20.dll) e está funcionando. Então o problema está em 4.1. O recurso foi removido ou movido para outro lugar?
Não está funcionando na versão 6 (a dll usada pelo office 2007) também.