- Home - Products - Tech Support - Downloads - Order - Contact Us -
The comments in this section are based on tests that were performed using the English version of Windows XP Professional that was setup to handle east Asian languages. During the tests some results were observed that we cannot immediately explain – but overall it appears that Localization Guru can be used to localize in Chinese, and by inference, other east asian languages.
One thing seems to be certain - in order to successfully display Chinese characters in a Visual Basic program the English version of Windows XP must be properly setup.
These two URL’s talk about how to setup the English version of Windows XP to support east Asian languages:
http://masakik.freeservers.com/
http://www.microsoft.com/globaldev/handson/user/xpintlsupp.mspx
The main points to remember are that in Windows XP you select Control Panel > Regional and Language Options > Languages and check Install files for East Asian languages. At that point the Visual Basic application using Localization Guru will still display question marks in place of Chinese characters. You have to go to the Advanced tab under Language for non-Unicode programs and select the appropriate Chinese language. After the reboot the Chinese characters in your application may appear as they should – more on that later.
Language for non-Unicode programs. What does this setting actually do? This is also known as System Locale in Windows 2000 and it enables programs that do not support Unicode (which apparently is true for Visual Basic programs) to display menus and dialog boxes in their native language by installing the necessary code pages and fonts. However, programs designed for other languages may not display text correctly.
1) To perform this procedure, you must be a member of the Administrators group on the local computer, or you must have been delegated the appropriate authority. If the computer is joined to a domain, members of the Domain Admins group might be able to perform this procedure.
2) Only non-Unicode programs are affected by this setting. The language you select for this option does not change the menus and dialog boxes of Windows or other Unicode programs.
3) Apparently products created using Visual Basic 6 using the standard visual controls that ship with VB are not "Unicode programs". I don’t clearly understand what makes a program Unicode versus non-Unicode. Since Microsoft Access and Microsoft Word seem capable of displaying the proper foreign characters no matter what locale specific version of Windows is installed, I’m guessing they fall under the “Unicode program” category. Visual Basic 6 stores strings in Unicode, but apparently the VB controls that appear on Forms, such as TextBox and Label, are "not-Unicode", at least as far as being able to display Chinese characters properly is concerned.
Adding and Editing Chinese Phases in the Localization Guru Language Database. Overall I found it simpler to use Access 2000 (or higher) to add and edit the Chinese phrases in the language database. Microsoft employs some magic that results in the proper display of Chinese text in Access even when using the English version of Windows that has not been setup to display Chinese. If you use the Localization Guru Language Editor to add the Chinese phrases to the language database you will have to use a version of Windows that can properly display Chinese characters for non-Unicode programs.
I used the English Windows XP Professional that was setup for Chinese support as described above. The results that are obtained using a Chinese version of Windows may be different – I have no way of testing that scenario.
These programs were used to test whether Chinese characters were properly displayed using different selections for Language for non-Unicode programs:
1) LGEditor.exe – The Localization Guru Language Editor reads the Chinese phrases directly from the Access 2000 language database and displays them in a grid control. This is similar enough to the approach taken by an application using Localization Guru Pro with an Access 2000 language database that I assumed that if the test worked with one it would work with the other.
2) Text Language Database App – The test application used Localization Guru Pro and localized itself by reading the Chinese phrases from a text language database created by LGEditor.exe.
The following table summarizes the results of my testing. The rightmost 5 columns represent the Chinese locale selection that was made under Language for non-Unicode programs. Chinese (Simplified) is used in Singapore and mainland China (i.e. PRC) and Chinese (Traditional) is used in Hong Kong and Taiwan. For the Text Language Database App tests the text language database used in the test was created by LGEditor.exe with Language for non-Unicode programs set to the Chinese locale used for that test (i.e. shown in the column heading). An X in the result column indicates that the Chinese characters were not displayed properly – which usually means that blanks or ?’s were displayed for one or more of the Chinese characters.
| Test Program | Chinese Test Characters |
Taiwan |
Hong Kong
S.A.R. |
Singapore |
PRC |
Macau S.A.R |
| LGEditor | Simplified |
X |
X |
X |
Note 1 |
X |
| Text Language Database App | Simplified |
X |
X |
OK |
OK |
X |
| LGEditor | Traditional |
OK |
X |
Note 1 |
OK |
|
| Text Language Database App | Traditional |
OK |
OK |
OK |
OK |
OK |
Note 1: Oddly the Chinese characters sometimes displayed properly and sometimes improperly after the reboot following switching to Chinese (PRC) from a different Chinese dialect.