2013-03-18 16 views
0

如何在C++/WinAPI應用程序中列出中性文化?對於特定的文化,EnumSystemLocales函數的工作原理合理,但由於某種原因,它沒有列出中性文化。最後,我希望有文化名稱映射(例如1045 < => pl-PL和21 < => pl)。中性文化列表

+0

你可以使用EnumSystemLocalesEx嗎?你需要支持哪些操作系統? (XP?Vista?Win7?Server?Client?) – azhrei 2013-03-18 23:35:08

+0

Windows XP至少(儘管代碼當前可以在Windows 2000上運行)。在這種情況下,我想唯一的解決方案是在應用程序中硬編碼表。 – 2013-03-19 19:14:15

回答

1

如果你想要做的是LCID來和區域名稱,然後用LOCALE_ALLOW_NEUTRAL_NAMES標誌LCIDToLocaleName(Win 7的以上)和LocaleNameToLCID也LOCALE_ALLOW_NEUTRAL_NAMES標誌之間進行映射(贏7及以上)可能是你想要的。帶有LOCALE_NEUTRALDATA標誌的EnumSystemLocalesEx(Win 7及以上版本)將列出中性文化。

+0

顯然OP已經接受了這個,但XP支持呢? – azhrei 2013-03-20 03:35:46

+0

對於XP來說,你堅持攜帶自己的數據。此數據未公開。 – 2013-03-23 04:45:34