Tastaturbelegung in Eingabeaufforderung setzen

Gelegentlich stehen Benutzer eines 32-Bit-Windows vor dem Problem, dass die Tastaturbelegung im Fenster der Eingabeaufforderung verstellt ist. Manche haben eine englische Tastaturbelegung ohne Umlaute, andere laufen in noch kuriosere Probleme. Zeit, einen kurzen Blick auf diesen Sachverhalt zu werfen.


Anzeige

Letztens erhielt ich mal wieder eine Nachfrage aus dem Bekanntenkreis, wie sich Tastaturbelegung in der Eingabeaufforderung anpassen lässt.

Hallo Günter,
ich habe ein kurioses Problem.
Im DOS-Eingabefenster, und nur dort, finde ich ein Tastaturlayout vor, welches weder das Deutsche noch das Englische ist. Um der Sache auf die Spur zu kommen, habe ich mit:
Shift und ; = ü
Shift und : = Ü
AltGr und \ = Accent circumflex
Eingabe + = *
Shift und * = (
und andere mehr.
Habe auch schon "kb16 gr" verwendet und nach "chcp" wurde die Codepage 850 gemeldet.
Vielleicht hast Du eine Lösung parat. Im Internet bin ich auf keiner Hilfeseite und auch nicht in Foren fündig geworden.

Hm, hört sich merkwürdig an. Wie sich das Tastaturlayout für Windows anpassen lässt, ist unter [1] beschrieben. Das hilft aber bei der Eingabeaufforderung nicht weiter. Es war beim obigen Hilferuf auch keine Angabe über die Windows-Version dabei (konnte von Windows XP bis Windows 7 alles sein).

Ich habe dann ein wenig gegraben, aber auf die Schnelle nix für das angenommene Windows 7 gefunden. Lediglich die Fundstellen unter [2, 3] schienen das Problem für Windows Vista zu adressieren. Später stieß ich dann noch auf die Fundstellen unter [3, 6]. Die verlinkten Beiträge bezogen sich zwar auch auf Vista und ein Fremdprogramm Amber, aber es wurde ein Lösungsansatz skizziert.

Englische Tastaturbelegung in Eingabeaufforderung als Standard

Unter [3] schreibt Ingo Böttcher ganz klar, dass ab Windows Vista standardmäßig ein englisches Tastaturlayout im Fenster der Eingabeaufforderung eingestellt ist. Hier das Zitat aus einem der englischsprachigen Forenbeiträge [2]:

On 32 bit Vista, KB16.COM should be in the %SystemRoot%\System32 directory, usually C:\Windows\System32. First, verify that the files exist on your machine (they are installed by default):

C:\Windows\System32\KB16.COM
C:\Windows\System32\Keyboard.sys
C:\Windows\System32\Country.sys

Next, test that KB16 runs okay, by entering the command:

C:\Windows\System32\KB16 BE,850,C:\Windows\System32\KEYBOARD.SYS

It should return to a command prompt, with no messages (error, or otherwise).

To activate KB16 for a DOS application, you need to run it in the same instance of the NTVDM ("NT Virtual DOS Machine") as your application. On Windows NT (including 2000, XP and Vista) a DOS application takes its startup environment from the files

C:\Windows\System32\Config.NT
C:\Windows\System32\Autoexec.NT

So, to activate a code page for a DOS app, add the code page commands to C:\Windows\System32\CONFIG.NT and
C:\Windows\System32\AUTOEXEC.NT, the same as you would to C:\CONFIG.SYS and C:\AUTOEXEC.BAT on a DOS machine. In CONFIG.NT add to the end of the file:

COUNTRY=032,850,C:\Windows\System32\COUNTRY.SYS

In AUTOEXEC.NT add to the end of the file:

C:\Windows\System32\KB16 BE,850,C:\Windows\System32\KEYBOARD.SYS

Now to test, open a Command Prompt. Then run the command "command.com". This will start an instance of the
MS-DOS Command processor. Run the command "edit", to start the DOS editor. Try typing in a few words in Edit, to see if the new Belgian keyboard is in effect. If it doesn't work in Edit, then review the above steps carefully.

If it works in Edit, but doesn't work in your old DOS application, then the app is not getting its Code Page info from DOS. It may be storing it in a config file, or the like.

Also muss man in die Autoexec.nt gehen und dort die Sprachanpassungen ändern. Statt der obigen Kennung für Belgien empfiehlt sich in Deutschland natürlich den Code DE GR bzw. 049 anzugeben [5].

Alle hier verlinkten Beiträge bezogen sich zwar auch auf Vista und teilweise auf ein Fremdprogramm Amber, aber es wurde ein Lösungsansatz skizziert. Die Rückmeldung des Bekannten, dem ich die Links schickte, lautete dann auch:

der Eintrag <C:\Windows\System32\KB16 DE,850,C:\Windows\System32\KEYBOARD.SYS> return in der Kommandozeile ließ das DOS-Eingabefenster kurz aufpoppen. Dann habe ich mit <cmd> das Eingabefenster geöffnet. Die Tastaturbelegung war o.k.
Danke für die Hilfe.

Problem gelöst, obwohl ich keine Ahnung habe, mit welchem Windows er werkelt.


Anzeige

Achtung: Wer mit einem 64-Bit-Windows unterwegs ist, kommt an dieser Stelle nicht weiter. Die obigen Ausführungen beziehen sich auf 32-Bit-Versionen, denn beim 64-Bit-Windows 7 ist kein command.com, kb16.com etc. mehr im Windows-Ordner system32 enthalten. Dort gibt es auch keinen DOS-Editor edit.com mehr. Allerdings habe ich auch noch nicht die Notwendigkeit gehabt, dort die Tastaturbelegung anzupassen – denn hier wird eine deutsche Tastaturbelegung im Fenster der Eingabeaufforderung angeboten.

Links:
1: Anpassen der Windows-Tastaturbelegung
2: Keyboard layout under command prompt
3: Keyboard layout in dos mode
4: Forendiskussion bei MS Answers
5: DOS country codes
6: Forendiskussion Winhilfe.ch


Cookies blockieren entzieht uns die Finanzierung: Cookie-Einstellungen

Anzeige


Dieser Beitrag wurde unter Tipps, Windows 7, Windows Vista abgelegt und mit Eingabeaufforderung, Tastaturbelegung, Windows 32 Bit verschlagwortet. Setze ein Lesezeichen auf den Permalink.

4 Antworten zu Tastaturbelegung in Eingabeaufforderung setzen

  1. jemand sagt:

    ergibt eine Fehlermeldung.

    gibt keine Fehlermeldung und chcp zeigt den Wechsel an.

    Trotz des kleinen Fehlers hat mir der Artikel sehr geholfen, danke!

  2. jemand sagt:

    Weil Codezeilen aus meinem Kommentar automatisch entfernt wurden hier noch 'mal das Wesentliche: Statt KB16 DE …(gibt Fehlermeldung) ist KB16 GR …. richtig.

  3. Jörn G. Möller sagt:

    Hallo Günter,
    die hier angegebene Lösung funktioniert fast perfekt. Nur an einer Stelle geht's leider nicht: Die AltGr-Taste auf meinem Rechner wird nicht erkannt! So fehlt mir leider der Zugriff auf so wichtige Sonderzeichen wie z.B. Backslasch (\) und andere.
    Hast Du dafür auch eine Lösung?
    Zur Information: Es handelt sich um Windows 7 (32-Bit).
    Für eine Lösung wäre ich sehr dankbar.
    Gruß Jörn

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Hinweis: Bitte beachtet die Regeln zum Kommentieren im Blog (Erstkommentare und Verlinktes landet in der Moderation, gebe ich alle paar Stunden frei, SEO-Posts/SPAM lösche ich rigoros). Kommentare abseits des Themas bitte unter Diskussion.