I'm looking for a best way to localize applications to different
languages with separate resource library (DLL) per language.
In former VB6 applications I used the compiled resources of an
empty (resource only DLL). I hold an instance of the DLL for the
actual language and used the resources with the API funktions.
So far I know in .NET the Management can be done easier? Is it
possible the change the Thread and GUI culture an get the right
resource DLL or a default resurce DLL used? Or is it better to
load the DLL's manually like former in VB6 with API?
Any good hints or best practice samples are welcome. Looking for
solutions for Windows (Control bases) and console applications
(more text based).
Regards
Holger
> Hello,
>
> I'm looking for a best way to localize applications to different
> languages with separate resource library (DLL) per language.
>
> In former VB6 applications I used the compiled resources of an empty
> (resource only DLL). I hold an instance of the DLL for the actual
> language and used the resources with the API funktions.
>
> So far I know in .NET the Management can be done easier? Is it
> possible the change the Thread and GUI culture an get the right
> resource DLL or a default resurce DLL used?
Yes that is the way to go. Basically you create a Resource file for every
language and add it to your project. The compiler will automatically generate
Satillite Assemblies for every language you've added. Use the ResourceManager
class to access your resources, it will automatically detect the current
culture and get the right resources for you.
> Or is it better to load
> the DLL's manually like former in VB6 with API?
No
> Any good hints or best practice samples are welcome. Looking for
> solutions for Windows (Control bases) and console applications (more
> text based).
The best book I've ever found on this issue is .NET Internationlization by
Smith-Ferrier.
--
Jesse Houwing
jesse.houwing at sogeti.nl