Wesley, thanks for your note.
I get 437 from command chcp and cmd chcp.
When in the cmd box I can type with all characters OK
When in the command box only lower case letters/numbers and a few
specials work. This does not change after typing chcp 860 (portugal).
I would try mode con codepage select=860 in the command box but I have
no way of typing a = character!
The registry settings are exactly as listed in your note.
The program I am running allows me to "shell to DOS" and I have tried
chcp while in the shell and exiting back to the program - still same
problem.
____
/ ony
:
<quote>
One or more CON code pages invalid for given keyboard code
The KEYB command examined all prepared code pages, and has found that
at least one code page is incompatible for your screen console device
(CON). This is only information to let you know that your keyboard and
screen console are working with different code pages.
<quote>
from...
Microsoft MS-DOS 5.0 Messages Reference
http://www.microsoft.com/technet/archive/msdos/messages.mspx?mfr=true
chcp displays or sets the active code page number.
Open command.com...
Start | Run | Type: command | Click OK |
Type: chcp hit Enter.
You get...
Active code page: nnn
Type: exit and hit Enter to close command.com.
Open cmd.exe...
Start | Run | Type: cmd | Click OK |
Type: chcp hit Enter.
You get...
Active code page: nnn
Are they the same?
For U.S. English versions of Windows NT the default is 437 codepage,
U.S. English.
Active code page should be the same for both command.com and cmd.exe.
Check this registry key and entries.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"ACP"="1252"
"OEMCP"="437"
"MACCP"="10000"
"OEMHAL"="vgaoem.fon"
ACP is the default ANSI code page; OEMCP is the default OEM code page;
and MACCP is the default Macintosh code page.
The OEMCP value controls to which OEM code page to translate ANSI, and
the OEMHAL value controls the display of extended characters at a
command prompt.
ANSI Codepage ID 1252 is used for all Western European languages,
including English.
The default OEM code page in Windows NT is the DOS 437 code page.
codepage select= yyy
yyy value from table.
Value Country/Region
------------------------------
437 United States
850 Multilingual (Latin I)
852 Slavic (Latin II)
855 Cyrillic (Russian)
857 Turkish
860 Portuguese
861 Icelandic
863 Canadian-French
865 Nordic
866 Russian
869 Modern Greek
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\
Control\Nls\CodePage
Here's some info from various sources.
ACP is the default ANSI code page; OEMCP is the default OEM code page;
and MACCP is the default Macintosh code page.
The OEMCP value controls to which OEM code page to translate ANSI, and
the OEMHAL value controls the display of extended characters at a
command prompt.
the default OEM code page in Windows NT is the DOS 437 code page
The computer's ANSI code page is stored in the following registry
value:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage\ACP
For U.S. English versions of Windows NT, Windows 95, and Windows 98,
the default OEM code page is 437 (U.S. English). The computer's OEM
code page is stored in the following registry value:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage\OEMCP
To verify the client OEM code page on Windows NT, Windows 95 and
Windows 98 computers, run chcp from the command line. To verify that
data in a file is stored in the proper code page, you must use the
appropriate editor. ANSI data should look correct in any GUI editor
(such as Notepad, WordPad, or Microsoft Word). OEM data should look
correct in a command-line tool (such as type or edit).
This may be of some interest...
INFO: Windows, Code Pages, and Character Sets
http://support.microsoft.com/kb/7543
--
Hope this helps. Let us know.
Wes
MS-MVP Windows Shell/User
In Pandora <
[email protected]> hunted and pecked:
When I start any DOS program I get message in the DOS box "One or more
CON code pages invalid for given keyboard code". My DOS program will
run but many keys do not deliver the correct character - all shift
characters deliver strange symbols.
This may be due to the fact I have a portuguese keyboard while XP etc
are all set up in UK English.