Three simple steps to localize
The German and French Online-Help pages have been created with the help of machine translation. In doubt please read the English original.
Use this sheet to specify the VCL binary file options.
Specifies what kind of output files Sisulizer creates and what kind of file name it uses when creating those files. You can check one or more output file types.
|Output file type||Description|
|Localized files||If checked Sisulizer creates a localized file for each language in the project.
For example if the original file is MySample.exe and the project contains German and Japanese, Sisulizer creates de\MySample.exe and ja\MySample.exe. These files are equal to the original file except resource data has been localized.
|Multilingual file||If checked Sisulizer creates one multilingual file containing all the languages of the project.
For example if the original file is MySample.exe, Sisulizer creates all\MySample.exe that contains resources in each language of the project.
|Resource DLLs||If checked Sisulizer creates localized resource DLL files. They are resource-only DLLs that contains the same resource data as the original file but the resource data has been localized to the target language.
Delphi and C++Builder (VCL)
Use VCL's resource files and Sisulizer VCL functions to enable run-time language switch.
For example if the original file is MySample.exe and the project contains German and Japanese, Sisulizer creates Sample.DE and Sample.JA resource DLL files.
Visual C++ (MFC)
Use MFC's resource files to enable initial language choose.
For example if the original file is MySample.exe and the project contains German and Japanese, Sisulizer creates SampleDE.dll and SampleJA.dll resource DLL files.
|Embedded resource DLLs||If checked Sisulizer creates an output files that contains all the resource DLL files embedded into the original file. Such an EXE can support several language in one file and the user can even change the language of the application on run time.
The output directory for the embedded file is "emb".
Specifies how VCL forms are localized. Possible options are:
|Set BiDiMode property||If checked Sisulizer changes the BiDiMode property when creating Middle Eastern forms. If the original value is bdLeftToRight, Sisulizer changes this to bdRightToLeft. This is applied only if ParentBiDiMode property of the same component is False.|
|Mirror forms||If checked Sisulizer mirrors the form and its sub components when creating a Middle Eastern form. Uncheck this if you call TForm.FlipChildren method before showing the form. This is because FlipChildren automatically mirrors the form.|
|Scan only forms from RcData||If checked only form data is scanned from RcData resources.|
|Scan inherited forms hierarchically||If checked inherited forms are show as sub nodes of the parent node in the project tree.|
|Separate lines||If checked each line of a Lines.Strings (e.g. TMemo.Lines) property is handled as a separate item. If unchecked the whole content of the List property is handled as a single item.|
|Use index in list items||If checked items of strings list (e.g. TMemo.Lines) will use index context instead of value index.
For example we have three items in a list box: One, Two and Three. If this check box is unchecked (default) each value will have following context values: ListBox1.Items.Strings.One, ListBox1.Items.Strings.Two and ListBox1.Items.Strings.Three. If this check box is checked the context values will be ListBox1.Items.Strings, ListBox1.Items.Strings and ListBox1.Items.Strings.
Check Scan source code to find resource string comments check box to make Sisulizer to scan the source code. Checking this will slow down the scanning speed so check it only if your source code contains resource string tags. You need to have source code available and you have to specify project file name in order to enable resource string tags.
Resource string tag is used to pass resource string comments and properties to the project. The syntax is
where tag is a tag string (e.g. slz), mc is the maximum length of the translation in characters, mp is the maximum length of the translation is pixels, and expression is the combined string expression.
The following line has an resource string tag that contains a comment ("A message that is shown when the application starts"):
SMsg = 'Hello world'; //slz A message that is shown when the application starts
The following line has an resource string tag that contains a comment ("Clicking this button opens on-line help") and sets the maximum length to 300 pixels:
SMsg = 'Click Help to get more information'; //slz MaxPixels=300 Clicking this button opens on-line help
Specifies a Delphi project file (.dpr). Use this if you have unit names having _ in their file names and those units use resource strings having also _ in their names. Otherwise Sisulizer can not determine the exact resource string context. For example if My_File.pas has the following resource string
resourcestring SMy_Sample_String = 'This is a sample';
It is highly recommend to specify project file. However Sisulizer can localize VCL applications without project files.
Specifies a DRC file that contains tables of all string constants declared by the resourcestring keywords.
If you add a platform file such as 64-bit EXE or DLL make sure that the same directory contains the DRC file of the 64-bit EXE or DLL. For example if your 64-bit file is C:\Sample\Debug\Win64\Project1.exe there must be also C:\Sample\Debug\Win64\Project1.drc. Make sure that Delphi compiler creates the DRC file.
If you do no specify a DRC file then you have to select what context method is used with resource strings. Possible values are:
|String value||Sisulizer uses string values as context values. This is safe even if you modify and recompile your application. However if the application has the same text in two ore more resource strings this method brings only one row to the project file. So all instances of the same text will share the same row and you can no longer translate them in a different way.|
|Resource id||Sisulizer uses resource ids as context values. This is potentially dangerous because it is very likely that Delphi compiler will change the resource strings ids next time you compile your project. This will cause lost of translations or switching of existing translations. Both are very hard to fix.|
Because both alternative context methods have their limitation and dangers it is very much recommended to specify a DRC file. To create a .drc file choose Project | Options | Linking from Delphi and select Detailed in the Map file selection. In Delphi XE2 or later you can also turn DRC files on by checking Output resource string .drc file check box.
DRC file name, project file name and resource string tags are visible only if the selected file is a Delphi binary file. C++Builder does not use resourcestrings or DRC and DPR files.