获取非Unicode程序的语言
任何人都知道如何使用c#以编程方式在控制面板区域设置中获取“非Unicode程序的语言”的值?
已经尝试过CultureInfo,RegionInfo并使用Encoding对象获取默认编码,但我只能获得Standards and Formats值或主代码页。
GetSystemDefaultLocaleName或GetSystemDefaultLCID (及其P / Invoke声明 )
国际化Windows应用程序中的NLS术语页面有答案:
ANSI应用程序应在安装期间检查非Unicode程序设置的语言。 它使用GetACP或GetOEMCP来检索值。 不支持为非Unicode程序设置语言的function。
GetACP
函数返回“ANSI代码页” (例如英语为1252),而GetOEMCP
返回“OEM代码页”(控制台中使用的代码页,英语为437)。
代码页有关于Windows中代码页的更多信息。
IIRC, Thread.CurrentUICulture
获得该值。