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
Localizing C# assembly - Usage - Three simple steps to localize - Technical Support (You need to be registered at the forum to write) - .NET, Delphi, ... - Sisulizer Localization Tool Support
AuthorPost
 Posted: Tue Jan 4th, 2011 09:18 am
PM Private Upload Quote Reply
vashisthamohit
Member
 

Joined: Fri Oct 15th, 2010
Location:  
Posts: 8
Status: 
Offline
I am using Sisulizer to localize my Delphi application. This application has extensive use of C++ and C# assemblies (used as a COM). Now I want to localize a C# assembly called from the Delphi application.

Currently we ship the Delphi application as Localized file as we allow user to run localized application even if the system has different culture or locale.

I want to do the same for C# assembly but there is no option for "localized file", it only creates the satellite assembly.

Is there any way to create a "localized assembly" from Sisulizer as I don't want to change the language at runtime.


Thanks in advance.

Back To Top PM Private Upload Quote Reply

 Posted: Tue Jan 4th, 2011 10:00 am
PM Private Upload Quote Reply
Jaakko.Nieminen
Administrator
 

Joined: Sat Mar 20th, 2010
Location:  
Posts: 657
Status: 
Offline
There is no way to create localized .NET assembly file. Sisulizer always creates localized satellite assembly file. There is not runtiem language change when using satellite assembly files. .NET rutime reads the resoruce data directly from satellite assembly file (if any) and skips the original resource. Of cource in your case this makes things more difficuly. You have to deploy the original assembly and the satellite assembly file. Then if you was to use the satellite assembly file even if it does not match the current locale of the computer you have to set the culture. For example if you want to use the German satellite assembly file (even when run on French OS) you should add following code somewehre in the initalization part of your C# code.

      Thread.CurrentThread.CurrentUICulture = new Culture("de-DE");

Jaakko

Back To Top PM Private Upload Quote Reply

 Posted: Tue Jan 4th, 2011 10:33 am
PM Private Upload Quote Reply
Janusz Grzybek
Super Moderator


Joined: Fri Dec 1st, 2006
Location: Zabrze, Poland
Posts: 2660
Status: 
Offline
Jaakko.Nieminen wrote: There is no way to create localized .NET assembly file. Sisulizer always creates localized satellite assembly file. There is not runtiem language change when using satellite assembly files. .NET rutime reads the resoruce data directly from satellite assembly file (if any) and skips the original resource. Of cource in your case this makes things more difficuly. You have to deploy the original assembly and the satellite assembly file. Then if you was to use the satellite assembly file even if it does not match the current locale of the computer you have to set the culture. For example if you want to use the German satellite assembly file (even when run on French OS) you should add following code somewehre in the initalization part of your C# code.

      Thread.CurrentThread.CurrentUICulture = new Culture("de-DE");

Jaakko

.NET localization solution base on different philosophy than Delphi. So as Jaakko told you can't use for .NET this same way of localization as for Delphi. This is a limitation of .NET and not Sisulizer.

Best,
Janusz



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

 Posted: Tue Jan 4th, 2011 10:57 am
PM Private Upload Quote Reply
vashisthamohit
Member
 

Joined: Fri Oct 15th, 2010
Location:  
Posts: 8
Status: 
Offline
Obviously its not Sisulizer limitation.

OK Suggest if I am wrong:

I am thinking of putting a registry entry in HKLM from the installer, that will suggest which language my application is ported to. Then my C# assembly function that is being called from the Delphi application will see LocaleID from the registry entry and accordingly will set the current culture. And installer will only deploy the satellite assembly for that language only.

What you says?

Back To Top PM Private Upload Quote Reply

Current time is 05:31 pm  
.NET, Delphi, ... - Sisulizer Localization Tool Support > Technical Support (You need to be registered at the forum to write) > Usage - Three simple steps to localize > Localizing C# assembly



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