VBScript - Sprache des OS auslesen

billardfreak

Neuling
Thread Starter
Mitglied seit
26.05.2009
Beiträge
387
Ort
Bellach (SO) - Schweiz
Hallo Community

Habe das Problem, dass ich ein Script schreiben soll, das verschiedene Sprachen unterstützt. Damit der Benutzer nichts auswählen muss, soll das Script automatisch die Sprache wählen, welche das OS hat. Wenn dieser eine andere Sprache als Deutsch, Englisch, Französisch oder Italienisch hat, dann soll standardmässig Englisch genommen werden. Dies wäre kein Problem ;)
Nun zum Problem:

Dieser Code:
Code:
Set colOperatingSystems = objWMIService.ExecQuery _
    ("Select * from Win32_OperatingSystem")

For Each objOperatingSystem in colOperatingSystems
    lang = objOperatingSystem.OSLanguage		'language: 1033 = english, 2055 = german, 4108 = french, 2064 = italian
Next
Dieser Code liefert bei jeder Maschine 1033 zurück, egal welche Sprache der Benutzer gewählt hat. Ist dies so, weil die Grundinstallation auf Englisch ist und die jeweiligen Sprachen mit dem MUI geändert werden?
Wie kann ich sonst die aktuelle Sprache ermitteln? Sehe ich den Wald vor lauter Bäumen nicht? Irgendwie tu ich mich schwer...

Danke schon im Voraus für eure Hilfe

Edit: Das ganze soll mit XP Rechnern funktionieren.
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Problem gelöst

Konnte das Problem nun selbst lösen. Hab dafür ein wenig eine andere Methode gewählt.
Hier meine Lösung:
Code:
Dim ObjWMI : Set ObjWMI = GetObject("winmgmts:\\.\root\CIMV2")
PUBLIC LANGID
PUBLIC LANGLE

DIM colItems : Set colItems = ObjWMI.ExecQuery("SELECT * FROM Win32_OperatingSystem")

For Each objItem in colitems
	LANGID = objItem.Locale 
Next

Select Case LANGID
	Case "0409" : LANGLE = "EN"	'English (United States)
	Case "0807" : LANGLE = "DE"	'German (Switzerland)
	Case "100c" : LANGLE = "FR"	'French (Switzerland)
	Case "0810" : LANGLE = "IT"	'Italian (Switzerland)
End Select

Die Liste kann man selbst erweitern wenn man will, hier der Link zu einer Tabelle, wo ihr die Codes sehen könnt!
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh