标题: 紧急求救: 关于键盘重定义
[打印本页]
作者: wllzwqz
时间: 2005-8-27 09:24
标题: 紧急求救: 关于键盘重定义
本人的一台本本,退格键(Backspace)键帽有点问题,致使该键无法正常使用。我知道通过ANSI.SYS可以进行键盘重定义,我想用Insert键来代替退格键功能,希望各位高手告诉config.sys里面语句怎么写。不胜感激!
曾经用过一个软件,可以转定义,但因为是win98的系统,结果就总是提示explorer出错,因此只能考虑用ANSI.SYS来做了。
作者: willsort
时间: 2005-8-27 14:40
作者: JonePeng
时间: 2005-8-27 22:29
看了Willsort转贴的Ansi.sys的应用,我受益匪浅!才知道原来Ansi.sys可以像楼主说的那样通过自定义把某一键代替为另一键。我研究了一下,发现Ansi.sys并不是对所有键都有效,尤其是Insert、Delete、Home、End、PgUp和pgDn键是不能替换为其它键的。因此我建议楼主用F12代替退格键。首先在config.sys里添加一行装载Ansi.sys(该文件位于Win98的command目录下):
devicehigh=c:\windows\command\ansi.sys
然后在Autoexec.bat添加:
prompt $e[0;134;8p$p$g
测试成功,但只对纯DOS以及Win98的MSDOS方式下有效,该方法对Windows的应用程序是不能替代退格键的,只能用第三方工具了。
作者: willsort
时间: 2005-9-2 15:12
Re JonePeng:
Insert 等键是可以替换的,只是它们的ANSI编码比较特殊。详细参看以下截取自PDOS6.22帮助文档中的ANSI.SYS。
----------------------------------------------------------------------------
ANSI.SYS
定义一套函数,用于改变图形的显示,控制光标的移动,以及对键盘进行重新设
置。ANSI.SYS设备驱动程序支持ANSI ESC序列的终端仿真,来对系统屏幕和键盘进行
控制。
ANSI ESC序列是一个ASCII码字符序列;序列开头的两个字符是ESC转义字符
(ASCII码为1Bh)和左方括号(5Bh),紧跟其后的是一个控制键盘和显示功能的字母
数字代码序列。 ANSI转义序列严格区分字母大小写,如“A”和“a”就分别有完全不
同的意义。
这个设备驱动程序必须通过CONFIG.SYS文件中的<DEVICE>或<DEVICEHIGH>命令
加载。
注意:本主题中,语法和ANSI ESC转义序列的黑体字必须严格照原样输入。
语法
DEVICE=ANSI.SYS
参数
指定ANS1.SYS文件所在处的完整路径名。
开关项
/X
重新映射独立于101键键盘的扩展键。
/K
ANSI.SYS象处理84键键盘一样来处理101键键盘。 这与命令SWITCHES=/K等效。
如果经常要用SWITCHES=/K命令,则有必要在ANSI.SYS中用/K开关项。
/R
在读屏幕程序(使计算机更方便残疾人操作)中用ANSI.SYS时,/R通过调整行滚动
来提高其可读性。
ANSI转义序列中要用到以下参数:
Pn
数字参数。指定一个十进制数字。
Ps
可选参数。指定一个十进制数,用以选择某一函数。若要指定多个函数,可用
(;)分隔不同的函数。
PL
行参数。指定一个十进制数,表示显示器或另一设备上显示的某一行。
Pc
列参数。指定一个十进制数,表示显示器或另一设备上显示的某一列。
用于光标移动、图形和键盘设置的ANSI ESC序列
下列ANSI转义序列中,缩写ESC代表ASCII转义字符27(1Bh),它出现在每个
转义序列的开头。
ESC
93 125 29 0;27
92 124 28 0;43
; 59 58 ─ 0;39
' 39 34 ─ 0;40
, 44 60 ─ 0;51
. 46 62 ─ 0;52
/ 47 63 ─ 0;53
` 96 126 ─ (0;41)
ENTER (小键盘) 13 ─ 10 (0;166)
/ (小键盘) 47 47 (0;142) (0;74)
* (小键盘) 42 (0;144) (0;78) ─
- (小键盘) 45 45 (0;149) (0;164)
+ (小键盘) 43 43 (0;150) (0;55)
5 (小键盘) (0;76) 53 (0;143) ─
----------------------------------------------------------------------------
ANSI.SYS─注解
重新映射的扩展键
带101个键的键盘,可利用/X开关对某些扩展键重新进行映射。例如,101键
键盘上有两个HOME键:一个在数字小键盘上,一个在光标控制键块中。这两个HOME键
在MS-DOS中是一样的,除非您指定了/X开关。
忽略扩展键
如果您的程序不能正确解释利用改进的键盘所进行的输入,可利用ANSI.SYS的
/K开关项。这样,改进的键盘可当作普通键盘使用。
同时使用/X和/K开关
不能在ANSI.SYS中同时指定/X开关和/K开关。
----------------------------------------------------------------------------
ANSI.SYS─例子
输入以下转义序列,利用文字串来使反斜杠和问号键互换。
ESC
Last edited by willsort on 2005-9-2 at 15:14 ]