Spracheinstellungen ändern

02/06/2009 - 14:37 von Peter | Report spam
Hallo,

ich möchte von eine C++ Applikation aus die Spracheinstellungen eines
XP-Rechners àndern. Meine Applikation ist eine "alte" Nicht-Unicode-App.
Hierzu muß also in den Làndereinstellungen der Dialog für die
"Spracheinstellungen für Nicht-Unicode-Programme" geöffnet und bedient
werden.
Für das Öffnen hab ich bereits einen Weg gefunden. Nur wie ich den Dialog
aus meiner Applikation heraus (ohne Bedienereingriff) bedienen kann, ist mir
noch schleierhaft.
Leider gibt es keine direkte API für diese Einstellungen, die ich benötige.
Da ich noch keine Erfahrung mit Scripting habe, die grundlegende Frage, ob
für eine solche Aufgabe das Scripting ein geeignetes Mittel ist.
Als Aufgaben wàren in dem Dialog einen Wert in einer Combobox zu setzen, den
Dialog mit "OK" zu benden und die daraufhin erscheinenden Dialoge "Wollen sie
wirklich... " und zum Reboot auch mit OK zu beenden.

Danke für jede Info,

Peter
 

Lesen sie die antworten

#1 Adolf Schmock
02/06/2009 - 22:52 | Warnen spam
Peter schrieb
Hallo,

Als Aufgaben wàren in dem Dialog einen Wert in einer Combobox zu
setzen, den Dialog mit "OK" zu benden und die daraufhin erscheinenden
Dialoge "Wollen sie wirklich... " und zum Reboot auch mit OK zu
beenden.



Guck dir für VBS/WSH die Befehle SendKey und AppActivate an, die könnten
eventuell von nutzen sein und dein "Problem" lösen. Ich weiss jetzt natürlich
nicht, ob der "Neu Starten"-Dialog sich damit auch ansprechen làsst.

With CreateObject("WScript.Shell")
Call .AppActivate(sAppTitle)
Call WScript.Sleep(500)
Call .SendKeys("%d")
'...
End With

With CreateObject("WScript.Shell")
Call .Run(sFile, 1, False)
Call WScript.Sleep(2000)
Call .SendKeys("{s}")
Call WScript.Sleep(500)
'...
End With

Ähnliche fragen