Support forum of the software localization tool Sisulizer


.NET, Delphi, ... - Sisulizer Localization Tool Support Home

Get in contact with the makers of Sisulizer.
Our forum is open for all questions around Sisulizer from customers and prospects.
Don't hesitate to register and ask. The Sisulizer team will answer ASAP.

Search     Help Home Sisulizer Website Download
Search by username
Not logged in - Login | Register 

 Moderated by: Renate.Reinartz, Markus.Kreisel, Jaakko.Salmenius, Ilkka.Salmenius
New Topic Reply Printer Friendly
Distinguish between Unicode and MBCS resource DLLs?! - Bugs and Quirks in Sisulizer - Technical Support (You need to be registered at the forum to write) - .NET, Delphi, ... - Sisulizer Localization Tool Support
AuthorPost
 Posted: Tue Feb 9th, 2010 06:17 am
PM Private Upload Quote Reply
Susanne Janke
Member
 

Joined: Thu Nov 6th, 2008
Location:  
Posts: 3
Status: 
Offline
Hi Sisulizer experts,

we have an old MFC application with MBCS encoding that has been localized to different languages using resource DLLs. That works really fine: The software developers create their program - let us call it Hello.exe - and a HelloENU.dll that contains a copy of the resources in English. With the Sisulizer, we can delegate the translation process to a professional translator or whatever. Finally, we get for example a localized HelloCHS.dll with Simplified Chinese.

Our problem arises with Traditional Chinese (CHT): When running Hello.exe in a CHT environment (e.g. Taiwanese user), some of the Chinese characters are substituted with question marks. Examining the resources of our HelloCHT.dll under a Traditional Chinese test computer using the Sisulizer or the Visual Studio Resource Editor, the Chinese strings are displayed without question marks.

To step deeper into the problem, we extracted one single dialog from our program and wrote a MFC dialog application to show this button. With MBCS encoding we could reproduce the behavior - ( ?? on the button), but if we generate the same MFC dialog application with Unicode instead of MBCS, the Chinese string on the button is perfect - with the same HelloCHT.dll being loaded.

OK, and now the question : How does Sisulizer distinguish between Unicode and MBCS resource DLLs?

Back To Top PM Private Upload Quote Reply

 Posted: Tue Feb 9th, 2010 08:26 am
PM Private Upload Quote Reply
Markus.Kreisel
Administrator


Joined: Sat Apr 8th, 2006
Location: Monschau, Germany
Posts: 2115
Status: 
Offline
Hi Susanne,

If ?? are shown then the selected code page does not know the chars. My guess is, that you mixed traditional and simplified Chinese.

Resources are always stored as UNICODE. This means you can mix all code pages in them. You could also add Japanese and Russian. If you display it as UNICODE all chars will look fine. But with my sample combination it will be more obvious that you mixed code pages that can not be displayed at the same time without an UNICODE enabled app. With the two chinese languages it is not so easy to detect for us. But Windows can not convert e,g, a traditional chinese char (from the resource that can store everything in UNICODE) into a simplified char needed for display. It will detect the difference and complain with ??

Hope this helps

Markus



____________________
http://www.sisulizer.com - Three simple steps to localize
Back To Top PM Private Upload Quote Reply

Current time is 06:33 am  
.NET, Delphi, ... - Sisulizer Localization Tool Support > Technical Support (You need to be registered at the forum to write) > Bugs and Quirks in Sisulizer > Distinguish between Unicode and MBCS resource DLLs?!



WowUltra modified by Sisulizer Copyright © 2007-09 by Jim Hale - Based on WowBB Copyright © 2003-2006 Aycan Gulez

Sisulizer software localization tool - Three simple steps to localize