【问题标题】:How to get Windows text resource from current display language如何从当前显示语言获取 Windows 文本资源
【发布时间】:2012-04-13 20:02:57
【问题描述】:

如果 Windows 设置为非英语显示语言,Windows 中的某些 UI 元素也会发生变化(例如 MessageBoxButtons 以所选显示语言出现)。有没有办法获取这些文本资源并集成到我的 .Net 应用程序中?

【问题讨论】:

标签: c# localization


【解决方案1】:

理论上,是的,你可以。 Windows common controls 使用 %WINDIR%\System32{LocaleIdentifier} 中的 MUI 文件检索相关语言的本地化字符串。有一个example on MSDN 显示了如何在win32 中做同样的事情。因此,您可以通过P/Invoke 使用与 Windows 控件相同的 ID 从 comctl32.dll.mui 和 comdlg32.dll.mui 加载本地化字符串。但这并不漂亮,可能会导致 Windows 未来更新中断(它是私有数据,不能保证它不会改变),坦率地说,这似乎有点矫枉过正。维护自己的本地化字符串集更加容易和安全!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-04
    • 2011-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多