I take it you mean GetSysColor(COLOR_BTNTEXT)? COLOR_BTNTEXT itself will always be 18, which would explain why it's always black if you're using COLOR_BTNTEXT on its own, although there are a few functions that accept the constant instead of the rgb value.