• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 290
  • Last Modified:

Languages in Windows

I have application with resources in two languages. Under WinNT it works and the language of running application depends on regional settings. But under Win2000 it depends primary on OS language and not on regional settings. Why? How to do it?

for example:
A...first lang., B...second lang. in res.
OS        OS lang.  Regional set.   Lang. of running app.
WinNT     A         B               B
Win2000   A         B               A (!!!)
0
lonicekm
Asked:
lonicekm
1 Solution
 
robpittCommented:
The language loading rules employed are indeed inconsistant and confusing.

That said it was my recollection that NT/2000 behaved in the same way and that it was

Win95/98 that were a bit odd.

Anyway a quick search of MSDN revealed the following which may of help:
http://support.microsoft.com/support/kb/articles/q169/4/83.asp
http://support.microsoft.com/support/kb/articles/q221/2/09.asp
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnintl/html/s24b3_b.asp

Rob
0
 
xutaoCommented:
   I don't know what rule you use in your application to identify the lauguage for use.
    There are two international feature API for us to get the language identifier of the current user locale [GetUserDefaultLangID()] and the user default-locale identifier [GetUserDefaultLCID].
    Use them you can easily know which language to use, at least I did.
    Good luck.
0
 
lonicekmAuthor Commented:
I don't use any rule, it chooses the language automatically. Under WinNT it works as I want and I don't need any extra code. How can I ordain explicitly f.e. what language version of the same dialog use?
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
robpittCommented:
Oh my god! - I just did a little test and it would seem that the first link I posted ( http://support.microsoft.com/support/kb/articles/q169/4/83.asp ) is a blantent lie.

On my 2000 system "English US" resources allways seem to get loaded in preference to an exact Primary Lang / Sub lang match.

For example, if I set my regional settings are French France then English US still gets loaded in preference to French France.

However if I use English *UK* resources everything works as expected i.e. a best match is loaded.

Crazy.

Rob

0
 
johnedwards2Commented:
Yeah there's defintely something fishy about the language loading stuff. Every time I think I understand it, I discover a scenario where it doesn't work as a I expect.

Alas the MSDN help and KB articles are very poor in this area.

Anyway the only reliable method I currently trust is to load the resources manualy using FindResourceEx but this is a real pain.
0
 
griesshCommented:
I think you forgot this question. I will ask Community Support to close it unless you finalize it within 7 days. Unless there is objection or further activity,  I will suggest to accept "johnedwards2" comment(s) as an answer.

If you think your question was not answered at all, you can post a request in Community support (please include this link) to refund your points.
The link to the Community Support area is: http://www.experts-exchange.com/jsp/qList.jsp?ta=commspt

PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!
======
Werner

0
 
ComTechCommented:
Question had been deleted when I came to award question.

ComTech
CS @ EE
0
 
MindphaserCommented:
Force accepted

** Mindphaser - Community Support Moderator **
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now