【问题标题】:Changing System Language Using .Net Framework使用 .Net Framework 更改系统语言
【发布时间】:2020-04-30 16:18:55
【问题描述】:

我目前正在尝试使用 C# 更改系统语言。我正在构建一个 Windows 桌面应用程序,以允许用户选择其语言列表中可用的语言。 (Powershell 命令:Get-WinUserLanguageList)。是否可以使用 C# 调用语言列表,或者我需要执行 powershell 命令(Set-WinUserLanguageList)

【问题讨论】:

  • 这就是你想要的吗? https://www.pinvoke.net/default.aspx/kernel32/EnumSystemLocales.html 如果是这样,请告诉我,我会发布作为答案。
  • 这是唯一的方法吗?我假设没有库可以在操作系统级别执行,除非我自动化我的 powershell 脚本。
  • 可能还有其他方法,但该站点是对 windows 类的一个很好的参考。我刚刚查了一下,这就是我发现的,所以我就从这里开始。

标签: c# .net wpf powershell


【解决方案1】:

使用Set-WinSystemLocaleSet-WinUserLanguageList

Set-WinSystemLocale en-US
Set-WinUserLanguageList en-US

请注意,这不会安装任何缺少的语言包,因此它们要么需要从 Control Panel 安装,要么您也可以使用方便的 PowerShell 来为您安装:

# Check installed languages
$availableLanguages = ( Get-WmiObject -Class Win32_OperatingSystem ).MUILanguages

# Install a new language (-PackagePath could also be on a UNC path as well)
# You will have to reboot after this for the language to become available
Add-WindowsPackage -Online -PackagePath C:\path\to\LanguagePack\lp_blah.cab

要获取新的语言包 cab 文件,请参阅this page 了解更多信息。您的 Windows 安装媒体上还应该有其他可用的语言包。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    相关资源
    最近更新 更多