WinBatch Tech Support Home

Database Search

If you can't find the information using the categories below, post a question over in our WinBatch Tech Support Forum.

TechHome

Dialog Editor version 6.X
plus
plus

Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.

Japanese Dialog


Question:

I want to create multilanguage dialogues and I have to provide japanese too. If I try to import the japanese translation into the winbatch compiler I´ve got only "???????" characters. I´ve already installed the windows japanese language support files.

Answer:

The short answer is yes: it is possible to create multilingual dialogs because WB dialogs support UNICODE.

In order to display Japanese text in a WinBatch dialog on a system with a different default language and font, you may need to do several things.

First, you will probably need to specify a UNICODE font in the dialog template for the controls that display Japanese characters. The specific font or at least a similar font must be available on all systems that will run your script. WinBatch uses the Windows font mapper so the exact font is not necessary but a similar font must be present. I use the 'Arial Unicode MS' font to display Japanese characters in dialogs on my English XP system.

Second, because WinBatch scripts and dialog templates are not UNICODE text, you need to place any UNICODE text in a control variable (the variable specified in the sixth attribute of the control's template definition) or create a dialog callback procedure and use the DialogControlSet function to specify the control's UNICODE text at runtime.

There are several ways to incorporate UNICODE text into your script: one is to embed a hex string version of the UNICODE text as the parameter to the ChrHextToUnicode function, another is to read UNICODE text in from a file.

Here is a simple example that works on my system.

Note: your system must have the 'Arial Unicode MS' font or equivalent installed. For more about this font see: http://support.microsoft.com/kb/287247

sJapanese = ChrHexToUnicode("AD30E330F330BB30EB30")

UnicodeTestFormat=`WWWDLGED,6.1`

UnicodeTestCaption=`Test Japanese Text`
UnicodeTestX=059
UnicodeTestY=103
UnicodeTestWidth=137
UnicodeTestHeight=094
UnicodeTestNumControls=003
UnicodeTestProcedure=`DEFAULT`
UnicodeTestFont=`DEFAULT`
UnicodeTestTextColor=`DEFAULT`
UnicodeTestBackground=`DEFAULT,DEFAULT`
UnicodeTestConfig=0

UnicodeTest001=`014,066,034,011,PUSHBUTTON,DEFAULT,"OK",1,1,32,DEFAULT,DEFAULT,DEFAULT`
UnicodeTest002=`079,066,035,011,PUSHBUTTON,DEFAULT,"Cancel",0,2,DEFAULT,"Arial Unicode MS|5632|40|34","0|0|0",DEFAULT`
UnicodeTest003=`017,009,094,020,VARYTEXT,sJapanese,DEFAULT,DEFAULT,3,DEFAULT,"Arial Unicode MS|5325|40|34","0|0|0",DEFAULT`

ButtonPushed=Dialog("UnicodeTest")


Article ID:   W17390
File Created: 2008:04:10:15:09:12
Last Updated: 2008:04:10:15:09:12