come posso impostare le impostazioni internazionali iniziali corrette per un programma C ++ su Windows? [c++]


Answers

Question

Sono abbastanza nuovo per la programmazione localizzata e sto cercando di capire come impostare le impostazioni internazionali iniziali corrette per un'applicazione C ++ non gestita appena lanciata (dall'interno dell'app).

Per quanto ne so, le nuove applicazioni iniziano con le impostazioni locali C, anziché con le impostazioni internazionali locali (inglese, tedesco, ecc.). Quindi quello che devo fare è chiamare setlocale( LC_ALL, "???" ) , ma non sono sicuro di come ottenere il valore corretto per il secondo argomento. Sarà qualcosa di simile a "Inglese" o "Tedesco: Germania" - in pratica qualsiasi impostazione locale è stata impostata dall'utente tramite il pannello di controllo Opzioni internazionali e della lingua. Per essere chiari, non sto cercando come formattare la stringa locale, sto cercando la stringa locale corretta per il computer su cui è in esecuzione l'app.

Sto indovinando che ci sono alcune API Win32 che mi danno questo, o forse una chiave di registro che conterrebbe il valore corretto. Qualcuno sa cosa dovrei fare?