Включить язык ввода программно в Windows 7
Я пишу установщик Windows для приложения, которое зависит от того, включен ли испанский язык ввода, который не используется по умолчанию в Windows 7. Есть ли способ, которым я могу программно определить, включен ли испанский язык ввода на хост-компьютере, на котором работает Win 7, и включить его? если нет?
2 ответа
Этот ресурс может помочь вам:
http://msdn.microsoft.com/en-us/library/system.windows.forms.inputlanguage(v=vs.71).aspx
Вы можете прочитать язык по умолчанию или установить язык по умолчанию через реестр Windows, здесь есть ссылка на ключ и коды языков: http://www.windowsitpro.com/article/configuration/where-in-the-registry-is-the-language-setting-for-each-user-stored-
Если, например, вы хотите использовать python для установки реестра, вот пример:
from _winreg import *
print r"*** Reading from SOFTWARE\Microsoft\Windows\CurrentVersion\Run ***"
aReg = ConnectRegistry(None,HKEY_LOCAL_MACHINE)
aKey = OpenKey(aReg, r"SOFTWARE\Microsoft\Windows\CurrentVersion\Run")
for i in range(1024):
try:
n,v,t = EnumValue(aKey,i)
print i, n, v, t
except EnvironmentError:
print "You have",i," tasks starting at logon..."
break
CloseKey(aKey)
print r"*** Writing to SOFTWARE\Microsoft\Windows\CurrentVersion\Run ***"
aKey = OpenKey(aReg, r"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", 0, KEY_WRITE)
try:
SetValueEx(aKey,"MyNewKey",0, REG_SZ, r"c:\winnt\explorer.exe")
except EnvironmentError:
print "Encountered problems writing into the Registry..."
CloseKey(aKey)
CloseKey(aReg)