// 列出区域设置列表
BOOL CALLBACK LocaleEnumProc(
LPTSTR lpLocaleString
)
{
TCHAR* p;
LCID lcid = _tcstol(lpLocaleString, &p, 16);
TCHAR tData[2048];
memset(tData, 0, sizeof(tData)/sizeof(TCHAR));
GetLocaleInfo(lcid, LOCALE_SLANGUAGE, tData, 2048);

int nIndex = g_pDlg->m_cbLanguage.AddString(tData);
g_pDlg->m_cbLanguage.SetItemData(nIndex, lcid);

return TRUE;
}

// 列出语言组列表
// BOOL CALLBACK EnumLanguageGroupsProc(
// DWORD LanguageGroup, // language-group identifier
// LPTSTR lpLanguageGroupString, // language-group identifier string
// LPTSTR lpLanguageGroupNameString, // language-group name string
// DWORD dwFlags, // options
// LONG_PTR lParam // callback parameter
// )
// {
// //看lpLanguageGroupNameString
// g_pDlg->m_cbLanguage.AddString(lpLanguageGroupNameString);
// return TRUE;
// }

void CAreaDlg::FillArea()
{
  EnumSystemLocales(LocaleEnumProc, LCID_INSTALLED);
}