无忧启动论坛

标题: 如何让PE启动时自动判断计算机类型来打开或关闭数字键盘? [打印本页]

作者: 2010iPhoenix    时间: 2010-11-18 14:00
标题: 如何让PE启动时自动判断计算机类型来打开或关闭数字键盘?
由于笔记本的数字键是和字母重复的,默认开启小键盘后打字就不方便了。但是默认关闭的话台式机使用数字的时候也就不方便了。所以我想写个VBS脚本来判断计算机类型,然后根据计算机类型来调用批处理来打开货关闭数字键盘。在配置文件中开机自启动VBS脚本。批处理我是这么写的不知道对不对
@ echo off
%SystemRoot%\PECMD.EXE NUMK1
各位老鸟看可行吗?(昨天用WIMTools打包好镜像还没来得急试呢)
还有二代内存将PE加载到内存怎么这么慢啊?差不多一分钟40MB?大家都是这样吗?

[ 本帖最后由 2010iPhoenix 于 2010-11-18 14:04 编辑 ]
作者: 2010winner    时间: 2010-11-18 14:11
要判断键盘而不是判断电脑。

台式机也有精简型的键盘的,不一定是笔记本电脑。

如果判断键盘容易,那么XP之类的老系统早就默认打开小键盘了。

估计不好实现。
作者: 穿云鹤    时间: 2010-11-18 19:16
这个问题我也遇到过,虽然只是按一下组合键就可以解决,但开始不注意在输入密码时老是出问题。

如果想解决不同机型数字键问题,是否在配置时增加一个选择对话框,让用户自己选择键盘类型。

大菜鸟一个,如果说的不对请一笑而过。
作者: 12050202    时间: 2010-11-18 22:11
大多数较好的PE默认关闭小键盘
开启仅按下MUM...

没讨论必要
作者: 2010iPhoenix    时间: 2010-11-19 10:30
标题: 回复 #2 2010winner 的帖子
精简键盘的台式机现在毕竟是少数,键盘是肯定不好判断的所以简单点还是判断计算机类型吧。
作者: lxl1638    时间: 2010-11-19 12:03
GetKeyboardType VB声明
Declare Function GetKeyboardType Lib "user32" (ByVal nTypeFlag As Long) As Long
功能:该函数得到系统键盘类型,nTypeFlag=0时返回键盘类型。

返回值(含意)
1: IBM PC/XT 或兼容键盘
2: Olivetti "ICO" 键盘(102个键)
3: IBM 或兼容键盘(84个键)
4: IBM 增强型或相似键盘(101或102个键)
5: Nokia1050或相似键盘
6: Nokia9140或相似键盘
7: 日本键盘

微软文档:
http://msdn.microsoft.com/en-us/library/ms724336(VS.85).aspx
作者: 玄天    时间: 2010-11-19 12:42
原帖由 lxl1638 于 2010-11-19 12:03 发表
GetKeyboardType VB声明
Declare Function GetKeyboardType Lib "user32" (ByVal nTypeFlag As Long) As Long
功能:该函数得到系统键盘类型,nTypeFlag=0时返回键盘类型。

返回值(含意)
1: IBM PC/XT 或 ...

应该不会准确,除非9帅出手增强 NUMK 功能(好像用WMI可以准确识别,不过本人不会)
作者: 2010iPhoenix    时间: 2010-11-19 19:16
标题: 回复 #6 lxl1638 的帖子
笔记本一般只有84键通过GetKeyboardType判断出笔记本也是101键,一般的笔记本都是IBM 101键盘,东芝笔记本是日本键盘Sony没测过不知道呢

[ 本帖最后由 2010iPhoenix 于 2010-11-20 16:25 编辑 ]




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3