WM_CTLCOLORBTNは、ダイアログボックスのボタンコントロールを描画する前に来るウィンドウメッセージ。
WM_CTLCOLORBTN メッセージ (Winuser.h) - Win32 apps | Microsoft Learn
ただ、標準ボタンはエディットコントロールと違って、背景色や文字色を簡単に指定出来ない。
resource.hで、
とする。
WM_CTLCOLORBTN.rcで、
とする。
WM_CTLCOLORBTN.cppで、
とする。

こうなる。
テーマをクラシックにしたり、WM_INITDIALOGにSetWindowTheme持って来たり、いろいろやったけど、WM_CTLCOLORBTNは来るものの、標準のPUSHBUTTONでは背景色も文字色も変わらなかった。
BS_OWNERDRAWを付けたら、赤くなった。SetBkColorしなくても、返したブラシのカラーになった。
ただし、オーナードローなので、テキストは自身で描画する必要ある。WM_DRAWITEMでオーナードローするので、あまりWM_CTLCOLORBTNの意味はなくなった。