German->Bulgarian: Strange letters appear in program

All announcements, questions and issues related to the TsiLang Components Suite.
Post Reply
Fragender
Posts: 3
Joined: Thu Aug 06, 2009 9:05 am

German->Bulgarian: Strange letters appear in program

Post by Fragender »

Hello,

I have to do a translation from german to bulgarian.
I have a german PC where Delphi 6 is installed, from where I do the translation.
And I have a bulgarian PC where the translated program should run.

The translation is inserted by TsiLang as 1byte characters, so instead of the cyrillic letter I see some strange german letters(on my german PC), but thats ok as I'm working with codepages.
Now I put the translated program onto the bulgarian PC. But instead of showing me the correct cyrillic letters, I just see nonsense.

Now I had a look at the *.exe itself in a HEX editor.
The translation was ok, as you can see at the following picture(its not the same position in the hex code, but you can see that translation worked).

Image

But the program itself shows some different letters:
Image

I have no idea why.
I had a closer look of what happens.
Look at the following picture: I have some letters in each row, and you can see that they change when showing up in the program on the bulgarian PC. Even the ascii-number of the letter changes!!!
As you can see, Windows tries to show up a "similar" letter, but thats not what I want!

Image

German PC: Win2000
Bulgarian PC: WinXP
Delphi 6
TsiLang 6.4

Any ideas?


With kind regards
Fragender
Posts: 3
Joined: Thu Aug 06, 2009 9:05 am

Post by Fragender »

So, some news:

You see the form with the wrong strings in the posting above!
If I change for example the caption on runtime via:

Code: Select all

hsform.Caption:=siLangLinked_hsform.GetTextOrDefault('IDS_6' (* 'hallo' *) ) ;
Then the caption shows up right with beatiful cyrillic letters!!!
Fragender
Posts: 3
Joined: Thu Aug 06, 2009 9:05 am

Post by Fragender »

Problem was solved by reloading all resource strings via:

Code: Select all

  
  //I want lang2, but to reload lang2 I first have to switch to lang1 and then back
  siLangDispatcher1.ActiveLanguage:=1;
  application.ProcessMessages;
  siLangDispatcher1.ActiveLanguage:=2;
  application.ProcessMessages;
isiticov
Site Admin
Posts: 2383
Joined: Thu Nov 21, 2002 3:17 pm

Post by isiticov »

Thank you, glad to see that the problem was resolved on your side.
Best regards,
Igor Siticov.
Post Reply