Sorting it all Out Michael Kaplan's random stuff of dubious value Be sure to read the disclaimer here first!
You don't want to ever use DEFAULT_GUI_FONT. Just like the thread locale, AVICAP32.DLL, and SetLocaleInfo, it really stinks.
Raymond Chen talked about some of its history of this GetStockObject derived font last year when he answered the question What are SYSTEM_FONT and DEFAULT_GUI_FONT?
He even explained one of the big problems about it in international scenarios:
"...on a typical US-English machine, they map to bitmap fonts that do not support ClearType."
But beyond that, there is another big problem. The problem is that the actual font it resolves to is SKU dependent; it is not dependent on any of the various locale settings on the machine. It therefore becomes one of those "features" that keeps an MUI system with a changed system/user locale from being a 100% substitution for a localized system in testing.
And even in Vista, where the single world wide binary goal has really been largely achieved, the backcompat issues that come up with (for example) a Korean user who expects a particular legacy application's font settings to not change disallow 'fixing' this behavior. So we are stuck with this bit of cruft that will forever differentiate some particular language SKUs of what is otherwise a SWWB model system....
Don't forget that as Raymond talked a bit about, all of the GetStockObject derived fonts are no longer what the help topic claims to be -- they are not used by the system for anything, and remain only for the sake of applications that have depended on these ugly beasts.
So please stay away from DEFAULT_GUI_FONT; it stinks, truly!
This post brought to you by "ᇸ" (U+11f8, a.k.a. HANGUL JONGSEONG HIEUH-PIEUP)