Originally posted by qzwqzwtest at 2007-2-6 03:45 PM:
死循环的问题
我用IE6试了,确实可以适时Ctrl+C
然而换用Opera9.01仍然不理睬我的键入
终于因此升级Opera到9.10 8679 多国语言版
结果没有太大变化
也许是我的网络或系统配置与你有所区别的原因吧
不过,既然已确实是Opera的兼容性问题
就可以不必理会它了
等Opera自己来改进吧 ...
关于Ctrl+C强行中断的问题,我来详细说一下现在的处理情况吧。
的确,对于在非预期情况(而非普通状态)下判断Ctrl+C和Ctrl+Break的按键,在不同的浏览器下都有些不同。比如说在Firefox下它们的键值为Ctrl+99;在Opera下Ctrl+C的键值为Ctrl+3、Ctrl+Break的键值为Ctrl+67;而在IE下,Ctrl+Break的键值为Ctrl+3,而Ctrl+C则不返回键值。因此,为了同时支持包括IE、Firefox、Opera在内的浏览器,从加入此功能的一开始就只好对用户所用的浏览器进行检测并针对相应的浏览器来判断按键(包括采用一些特殊方法),使得最终Ctrl+C和Ctrl+Break键在我的IE、Firefox、Opera下都可以中断程序了。
从理论上来说,既然在我的电脑上的Opera(版本也是9.10 8679)中它们可以中断程序,在其它电脑上应该也是可以的。为了更好的测试,刚才我特意在VMware虚拟机中全新安装了一个Opera 9.10 8679多国语言版(我的真实机上则是英文版的),测试后发现Ctrl+C和Ctrl+Break键也可以正常中断程序。因此对于上面提到的问题,我觉得不太像是Opera自身的问题,而可能是其它原因造成的(比如设置问题?插件冲突?)。
不过,关于语言版本倒提醒我加入一个新功能,那就是自动根据浏览器的默认语言来选择相应的起始代码页。现在已支持当浏览器的默认语言为zh-cn/zh-sg/zh-chs的时候起始代码页为936,当为zh-tw/zh-hk/zh-mo/zh-cht的时候起始代码页为950,否则的话起始代码页将为437。但仍然可以用?cp=xxx参数来手工指定起始代码页,并可以用%codepage%环境变量来判断当前代码页。
论坛的主题订阅功能是不存在上限的,所以net file命令也没有文件上限;而用户的短消息的上限和目前的短消息数现在已可以用net user命令列出。
关于type与more的功能重叠问题。其实这个在现有的某些环境下也有体现,甚至更加明显,例如在Windows的“故障恢复控制台”中,两者的功能就是完全一致的(而more命令也无法用于管道操作)。在DOS/CMD下type命令都是没有开关的,而其more命令则与现在命令行界面的more命令功能相似(除不支持管道/重定向操作外),如果给type命令加上控制暂停的开关似乎有点违背DOS/CMD下的type和more命令的分工的初衷。同时考虑到管道操作实现起来相当复杂,是否可行都难以保证(要注意对I/O操作的支持是网页脚本语言的弱项),所以现在采取目前的这种分工可能还是更好些呢。
如果没有问题的话,一天内将发布正式版。
Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
