在我的开发PC上我有windows 8 64bit。在这里,我可以看到Unicode字符串,也可以使用水晶报告打印它。
但是当我将我的应用程序安装到其他PC(Windows 7 32位)时,我会看到方框而不是Unicode字符串。
然后我打开记事本(在其他电脑上)并将字体更改为我在水晶报告中使用的相同字体,即Cambria。
在记事本中,我可以编写Unicode字符,没问题。 但在水晶报告中为什么我看到方盒?
在水晶报告中,我使用label来显示Unicode字符串。
我在MS SQL SERVER Local DB中使用NVARCHAR作为存储数据类型。现在我使用N' UnicodeString'存储unicode字符串数据。插入后我运行一个选择查询,看到所有记录都很好,没有unicode显示问题。 制作数据集并使用它创建水晶报告。 运行并打印水晶报告。 一切都很好(开发PC)。
现在生产完成后,我将我的exe转移到运行在Windows 7 32位上的另一台PC并运行它。除了他们成为盒子的unicode角色之外,所有的东西都是okey。