C/Visual C - Idioma del Windows???

 
Vista:

Idioma del Windows???

Publicado por Nelek (816 intervenciones) el 04/04/2007 13:51:58
Hola a todos,

acabo de caer en la cuenta de que he puesto todos los mensajes de error y de informacion de mi programa en alemán porque estoy trabajando para una empresa alemana pero me gustaria poner al menos 3 opciones: Aleman, Espanyol e Ingles (por defecto).

Como puedo averiguar desde el VC++ 6.0 el idioma en que está instalado el Windows donde se ejecute el programa?

Lo que quiero hacer es algo como esto:

BOOL CMyDoc::OnNewDocument()
{
HGLOBAL m_szLanguage = "TOMAR_EL_IDIOMA_DEL_WINDOWS_LOCAL ()";
//...
}

y cada vez que tenga que mandar un mensaje de fallo o info:

//Situacion para el mensaje de fallo
if (m_szLanguage == "Spanish")
//Mensaje en espanyol
else if (m_szLanguage == "German")
//Mensaje en aleman
else
//Mensaje en ingles

Alguien la funcion que recoje el idioma del sistema y que formato de dato te devuelve?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Idioma del Windows???

Publicado por yo (1 intervención) el 04/04/2007 15:00:41
Aqui esta

Funcion:
LANGID GetSystemDefaultLangID(VOID)

Interpretacion de resultados (MSDN):

Identifier Language Sublanguage/Locale Language Code
0x0406 Danish Danish DAN
0x0413 Dutch Dutch (Standard) NLD
0x0813 Dutch Belgian (Flemish) NLB
0x0409 English American ENU
0x0809 English British ENG
0x0c09 English Australian ENA
0x1009 English Canadian ENC
0x1409 English New Zealand ENZ
0x1809 English Ireland ENI
0x040b Finnish Finnish FIN
0x040c French French (Standard) FRA
0x080c French Belgian FRB
0x0c0c French Canadian FRC
0x100c French Swiss FRS
0x0407 German German (Standard) DEU
0x0807 German Swiss DES
0x0c07 German Austrian DEA
0x040f Icelandic Icelandic ISL
0x0410 Italian Italian (Standard) ITA
0x0810 Italian Swiss ITS
0x0414 Norwegian Norwegian (Bokmal) NOR
0x0814 Norwegian Norwegian (Nynorsk) NON
0x0416 Portuguese Portuguese (Brazilian) PTB
0x0816 Portuguese Portuguese (Standard) PTG
0x041d Swedish Swedish SVE
0x040a Spanish Spanish (Standard/Traditional) ESP
0x080a Spanish Mexican ESM
0x0c0a Spanish Spanish (Modern) ESN
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Idioma del Windows???

Publicado por fernando.gomez (1604 intervenciones) el 04/04/2007 17:30:24
Más aún, te recomiendo que en todo caso, crees una DLL de recursos por cada idioma que quieras usar. Cambia las cadenas de menús, diálogos y la tabla de cadenas de texto, y en el InitInstance de tu CApp, cargas la DLL como te corresponda, con AfxSetResourceHandle.

Más información en http://msdn2.microsoft.com/en-us/library/d8ws31ff(VS.71).aspx.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Idioma del Windows???

Publicado por Nelek (816 intervenciones) el 04/04/2007 19:25:08
Gracias a ambos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar