如何在虚拟机上模拟英国服务器?

如何在虚拟机上模拟英国服务器?

我正在开发的产品有美国版和英国版。我们的英国测试服务器上有一项服务无法获取正确的 resx 文件。通过代码追踪后,我们将正确的 CurrentCulture 设置为“en-GB”,但 CurrentUICulture 仍然是“en-US”。

显然我们没有正确设置某些内容。如何从美国机器正确设置英国虚拟机?

这是在 Windows Server 2003 上

答案1

来自 MS 知识库文章这里

1 按开始 -> 设置 -> 控制面板 -> 区域选项。

2 从“您的本地(位置)”列表框中,选择适当的位置来设置用户本地(包括日期、货币、时间、数字等格式)

3 从“设置默认”按钮中,选择操作系统的默认语言,例如,如果您选择阿拉伯语作为默认语言,则 ANSI 应用程序将正确显示阿拉伯语文本。

4 按“OK”按钮然后重新启动。

笔记:更改系统区域设置将在系统重启后生效,而仅更改用户区域设置则不需要重新启动系统。

更改系统区域设置需要区域设置系统管理权限,而更改用户区域设置则不需要。

我想选择“英语(英国)”就能得到你想要的。

答案2

我今天正在这样做,但方向相反 - 从英国到美国和加拿大。可能的问题是控制面板选项“将所有设置应用于当前用户帐户和默认用户配置文件”将仅更新 .DEFAULT 和 S-1-5-18(本地系统帐户)。您的大多数服务将在 S-1-5-19(本地服务)和 S-1-5-20(网络服务 -完整列表在这里)。

我所做的是:

  1. 使用控制面板将系统默认设置为所需的区域设置
  2. 打开 regedit 并导航至HKEY_Users\S-1-5-18\Control Panel\International
  3. 确认所需的本地显示在右侧面板中,如果没有,请返回 1 或尝试重新启动或做其他事情
  4. 右键单击左侧面板中的 International 键并将其导出到 S-1-5-18.reg 文件
  5. 复制该文件并将其重命名为 S-1-5-19.reg
  6. 在记事本中打开 S-1-5-19.reg,并将 S-1-5-18 的两个实例替换为 S-1-5-19
  7. 重复 5 和 6,但 S-1-5-20 除外
  8. 导入 S-1-5-19.reg 和 S-1-5-20.reg(双击并确定)
  9. 重启服务器

如果您打算做很多这样的工作,您可能还需要导出一些具有美国设置的注册表文件 - 我现在有一套针对英国、美国和加拿大的注册表文件,因此我可以通过双击和重新启动来切换我的虚拟机。

答案3

如果它是虚拟服务器,那么为什么不从头开始设置一个新的虚拟服务器,并在安装时将所有位置详细信息设置为英国?如果其他一切都失败了,那么这可能会节省您查找错误设置的时间。如果这不起作用,我猜可能是您的代码中的其他地方导致了问题。

相关内容