Character encoding vb6中不支持Unicode

Character encoding vb6中不支持Unicode,character-encoding,vb6,multilingual,Character Encoding,Vb6,Multilingual,我们有一个用vb6编写的应用程序,我们也有该应用程序的多语言支持,我们在.LNG文件中提供了所有用户消息以及ID,但应用程序不支持Unicode语言,如日语、中文等,有人能建议如何进行代码的最小更改并使其工作 感谢标准VB6控件不支持UNICODE。可以使用MS窗体控件(FM20.DLL) 问题是旧版本i有缺陷,并且由MS Office更新。office id的新版本为64位,不包含32位FM20.DLL。我认为这只是实现UNICODE的“简单”方法,但它仍然是对应用程序的巨大改变 但是VB6支

我们有一个用vb6编写的应用程序,我们也有该应用程序的多语言支持,我们在.LNG文件中提供了所有用户消息以及ID,但应用程序不支持Unicode语言,如日语、中文等,有人能建议如何进行代码的最小更改并使其工作


感谢标准VB6控件不支持UNICODE。可以使用MS窗体控件(FM20.DLL)

问题是旧版本i有缺陷,并且由MS Office更新。office id的新版本为64位,不包含32位FM20.DLL。我认为这只是实现UNICODE的“简单”方法,但它仍然是对应用程序的巨大改变

但是VB6支持不同的语言,至少支持欧洲语言,但是文本必须正确编码()。我想常用的Windows字体,如MS San Serif、Arial支持大多数语言


如果windows默认语言设置正确,其他语言字符也可以使用。请参阅,例如,或直接试用日语windows

这是一个非常开放的问题。没有任何一件简单的事情可以神奇地解决这个问题。如果你阅读这个线程,这些人有两组示例代码@你能建议一些方法吗?我知道这是一个开放式的问题,除了使用第三方,还有其他方法吗controls@VincentJames当我通过断点观察时,我可以看到正确的日文文本,问题在于显示字符串。当vb6隐式地将Unicode转换为ASCII以显示字符串时,再次将其转换为ASCII(在我的例子中,这是不允许的),有没有办法抑制这种转换?没有涉及ASCII,而是本地化的ANSI或DBCS,这根本不是一回事。但是VB6并没有进行转换,您使用的ANSI控件正在进行转换。VB6只带有几个Unicode控件。您可能会看到FM20.dll是一个很好的替代方案,但它基本上是为MS word应用程序而构建的,我关心的是在vb6应用程序中使用它有多可靠。现在,如果我们这样做,将会出现许多兼容问题。我的应用程序支持多种语言,但问题是这是我们第一次支持Unicode,例如,如果在普通PC中,如果我选择日语,它应该支持任何PC中的选择语言。请分享一些知识标准VB6控件不支持unicode。所以根据我的理解,要么使用unicode控件(FM20),要么使用合适的windows语言(也许你需要日语windows)。