Seite 1 von 1

Keyboard Länder Einstellung

Verfasst: Mi, 13. Dez 2006 0:56
von AUGE_OHR
hi,

man kann ja unter XP/W2K verschiedene Tastatur "Belegungen" wählen.

wie kann ich nun feststellen welche eingestellt ist ? In der NLS.CH kann
ich zwar alles mögliche finden, aber nichts für´s Keyboard ?

gruss by OHR
Jimmy

Tastaturtyp

Verfasst: Mi, 13. Dez 2006 15:20
von Rolf Ramacher
Hallo Jimmy,


du könntest ja die autoexec.nt durchforsten. Hier müßte ja drinstehen welche keyb geladen wird. Oder meinst du etwas anderes ?

Re: Tastaturtyp

Verfasst: Mi, 13. Dez 2006 17:01
von AUGE_OHR
hi,
Rolf Ramacher hat geschrieben: du könntest ja die autoexec.nt durchforsten. Hier müßte ja drinstehen welche keyb geladen wird. Oder meinst du etwas anderes ?
sorry ich meine nicht den "DOS" Keyboard Treiber.

In der Taskleiste bei der Uhr steht doch meisten "DE". Nun kann man
aber auch noch eine "EN"glische oder "CN" Belegung installieren/wählen.

Ich würde nun gerne wissen was der User eingestellt hat und das ggf.
von "CN" auf "DE" ändern wenn meine Xbase++ Application läuft ...

gruss by OHR
Jimmy

RE Keyboard Länder Einstellung

Verfasst: Mi, 13. Dez 2006 18:42
von Rolf Ramacher
Hi Jimmy,


vielleicht gibt es hierbei ein Windows-programm das diese Information liefert wie z.B. control.exe - ich suche morgen mal

Verfasst: Do, 14. Dez 2006 9:14
von Günter Beyes
Hallo Jimmy,

Hiermit kannst du feststellen, welche Tastaturbelegung aktiv ist:

Code: Alles auswählen

FUNCTION GetKeyboardLanguage()
LOCAL nLayout := DllCall( "user32.dll", DLL_STDCALL, "GetKeyboardLayout", 0 )
RETURN bAnd(nLayout, 0xFFFF)
Eine Liste der Sprachcodes gibt es hier:
http://msdn.microsoft.com/library/defau ... s_61df.asp

Um zu sehen, welche Tastaturbelegungen installiert sind, bzw. die Tastaturbelegung zu ändern, schau bei MSDN nach diesen Funktionen.

GetKeyboardLayoutList, LoadKeyboardLayout, ActivateKeyboardLayout

Mich fasziniert übrigens seit langem, daß man auf einer alphabetischen Computertastatur chinesische Schriftzeichen eingeben kann. Wie funktioniert das eigentlich :?:

Viele Grüße,
Günter

Verfasst: Do, 14. Dez 2006 15:28
von AUGE_OHR
hi,
Günter Beyes hat geschrieben: Hiermit kannst du feststellen, welche Tastaturbelegung aktiv ist:

Code: Alles auswählen

FUNCTION GetKeyboardLanguage()
LOCAL nLayout := DllCall( "user32.dll", DLL_STDCALL, "GetKeyboardLayout", 0 )
RETURN bAnd(nLayout, 0xFFFF)
Eine Liste der Sprachcodes gibt es hier:
http://msdn.microsoft.com/library/defau ... s_61df.asp

Um zu sehen, welche Tastaturbelegungen installiert sind, bzw. die Tastaturbelegung zu ändern, schau bei MSDN nach diesen Funktionen.

GetKeyboardLayoutList, LoadKeyboardLayout, ActivateKeyboardLayout
SUPER, danke !
Günter Beyes hat geschrieben: Mich fasziniert übrigens seit langem, daß man auf einer alphabetischen Computertastatur chinesische Schriftzeichen eingeben kann. Wie funktioniert das eigentlich :?:
Es wird ja eigendlich nur noch die "einfache" Eingabe in "Pejing" gemacht.

Grob gesagt ist es eine "Lautsprache". Man tippt also den ersten "Laut" ein
und es passiert sowas wie eine "incrementale Suche" d.h. er zeigt dir dann
alle an die mit dem "Laut" beginnen. So geht es dann mit den weiteren
"Laut"en weiter bis das "Zeichen" kommt was man sucht.

Da jedoch die "Zeichen" 2-bit lang sind geht es nur unter GUI und das
mag meine "deutsche" Anwendung ja nicht. Deshalb die Kontrolle der
Tastatur.

danke noch mal
gruss by OHR
Jimmy

Verfasst: Do, 14. Dez 2006 16:09
von brandelh
AUGE_OHR hat geschrieben:Da jedoch die "Zeichen" 2-bit lang sind
Hi,

ich denke du meinst mindestens 2 Byte oder braucht man noch mehr Speicherplatz ?
Wenn es 2 Byte sind, ist das dann in UNICODE enthalten ?