1

大家好,

我正在尝试本地化 .NET/C# 项目。我正在使用字符串资源文件并将所有表单上的“Localizable”属性设置为“True”。装配文化是空的。resx/resource 文件已成功通过 Lingobit、resgen 和 al。

在运行本地化的可执行文件时,我的一些表单没有本地化(我知道设置了 Localizable 标志的表单),而其他表单是。甚至有一些表单是本地化的,但一两个按钮不是。我无法分辨非本地化表单/控件与本地化表单/控件之间的任何区别。

有人知道我可能会错过什么吗?谢谢!

4

3 回答 3

2

在 Visual Studio 中打开窗体时,如果将窗体的 Language 属性更改为您本地化的语言,是否存在同样的问题?即使在本地化资源中,非本地化表单/按钮是否仍有可能设置英文文本?

于 2008-09-24T17:07:29.477 回答
1

是的,我会和安迪一起去,并对资源文件的内容持怀疑态度。我们曾一度涉足本地化,遇到了许多问题,但这肯定不是其中之一。

如果不是这样,那么您如何测试您的应用程序?如果您还没有尝试过,我建议您启动一组安装了外语版本的 Windows 的虚拟机(而不是仅仅更改您机器上的语言设置),看看这是否有什么不同。

于 2008-09-24T17:11:50.587 回答
1

好吧,我想通了。你们是对的。我们没有从 Lingobit 正确生成翻译的 resx 文件。一些文件会被翻译,而另一些文件的英文文本仍在 resx 中。

谢谢你的帮助!

编辑:只是为了扩展这一点,我们专门弄乱了 al.exe 命令,该命令采用二进制 .resources 文件并创建一个附属程序集,将其添加到可执行文件的清单中。在 /embed 命令中,您必须将资源文件绑定到命名空间。我们的顶级名称空间已正确映射,但我们并未绑定到所有资源文件上的子级名称空间。

于 2008-09-24T20:41:00.227 回答