Hi! The font creation functions will *never* fail, because the system will return the handle to a font that is similar to the one you described with the fontfamily, pitch, width, etc... parameters passed to these functions (raw or inside a LOGFONT structure). However, if you pass an invalid parameter, it will fail, but the wrong facename won't cause a failure.

So you'll always end up with a valid HFONT, no matter what facename you specify... You may try checking if an specific font exists, by enumerating the font families (check EnumFontFamiliesEx on MSDN).

Hope it helps.
Regards.