0

我有一个简单的 vb6 编辑器类型应用程序,它有一个富文本框作为编辑器页面。它允许用户键入内容并将其存储到一个文件中,该文件将 RTF 中的所有文本存储为 xml 中的 CDATA。

当您加载回文件时,它将从 xml 中读取并加载回 rtf。我们允许 unicode 编辑,但我的问题是我有一个使用 Windows XP 的用户,他们在阅读中文字符时遇到了一些问题。他们在他们的电脑中显示为胡言乱语。

它在我的和同事的都显示得很好。我已经检查过他们的系统中是否有正确的区域语言和设置。已经检查了东亚语言的安装文件。他们可以在网站上看到中文单词,甚至可以将它们打出来。

我觉得我在这里遗漏了一些东西,但我不知道接下来要检查什么?关于下一步我可以测试或检查什么的任何想法?

我的描述能力很差,如果有什么不清楚的地方问我。谢谢。〜史蒂夫

4

3 回答 3

0

可能是字体的问题?

尝试使用支持 unicode 字符(Arial Unicode)的字体。或者尝试去一个带有中文字符的网站并将其粘贴到richtextbox中,将其保存到文件中并尝试从文件中加载它。

那样有用吗?

于 2008-12-10T04:35:13.767 回答
0

这很奇怪。尝试确认您的用户具有相同版本的 RICHTXT32.OCX 吗?

于 2008-12-10T05:20:56.560 回答
0

好吧,他们应该是因为我将应用程序打包在 vs 安装程序安装包中。对于字体,它是 sim sun,我已经与用户确认他们在 window/fonts 下确实有 sim sun 字体。

顺便说一句,我已经更新数据实际上存储在 CDATA 下的 xml 中,尽管 rtf 块保持原样。

好的,这似乎是解决方案,虽然我不知道为什么。在我的 msi 安装文件中,我包含了riched.dll,所以当我安装它时,dll 会起作用并在富文本控件中搞砸我的汉字。

但是当我重新打包以排除该 dll 文件并使用该设置重新安装时,它现在似乎可以工作了......

于 2008-12-10T05:28:06.750 回答