思路小记 - 彻底干掉惠普笔记本的大小写切换提示框
2013-06-03 00:19
330 查看
现象
最近才开始用HP的笔记本(EliteBook),发现有个恼人的现象:在输入文字的时候,有时需要按下CAPS Lock键,锁定大小写,按下[b]CAPS键后,你会发现你的输入会暂时输入不进去,它会在右下角弹一个提示,说CAPS ON / OFF,提示消失后,你可以继续输入了,但是中断让人十分不爽。[/b]
尝试
1、寻找程序设置,期待有设置可以开启或者关闭这个提示,未果。2、网上搜索,按照帖子里面说的在控制面板里设置系统自带的设置,未果。
3、发现有Remap keycode的方案,把Caps Lock按钮的keycode改掉,但怀疑会导致大小写切换失效,没有进一步尝试。
4、意外发现,这个提示框出现时,会有一个进程出现,HpCaslNotification.exe,改名后,任何提示都没有了,包含屏幕亮度调节提示框、音量调节提示框等。也不太爽,不完美,只想去掉大小写切换时的提示框。
5、尝试分析这个HpCaslNotification.exe程序,看看是不是读取了什么地方设置,再去弹这个提示框,思路还是在停留在设置上面,后来发现这个程序是.NET写的,用上ILSpy,却发现的确是被混淆了,读起代码来比较吃力,也没有找到关键点。
6、偶然来了灵感,去追踪谁打开了HpCaslNotification.exe,发现它的父进程是QLBController.exe,发现也是.NET编写的,并且没有被混淆,大爽。
7、发现了关键代码,对键盘有监听,判断按下的是否是CAPS Lock键,如果是就会弹相应的提示框。
结论
使用Reflector加上Reflexil,在IL里,把QLBController.exe中关键判断Caps Lock的KeyCode 20改成其他的KeyCode(不存在于键盘上的KeyCode),再保存(此程序有签名,我是选择的保持延迟签名状态),把原始程序替换掉。尝试切换大小写,整个世界都安静了,再没有恼人提示中断了。而且其他的提示框也保留下来了。没有尝试,在保存程序时,对签名的不同处理,会不会对运行程序有所影响。
相关文章推荐
- DELL笔记本大小写切换时鼠标焦点转移的解决办法
- Dell笔记本电脑INSPIRON系列如何取消Caps Lock大小写切换时延迟
- DELL笔记本电脑大小写切换时失去焦点需要再点一下输入框注册表解决方法
- 怎样去除联想笔记本右下角的大小写切换标志,那个大写的A
- 有了它彻底摆脱切换窗口以后的白屏或花屏,想不正常都难
- 切换笔记本电脑F1-F12快捷键
- idea设置提示不区分大小写
- Vs2008 安装后当切换到图形设计界面的时候自动弹出 ”正在准备安装的提示“,然后程序处于假死状态
- 安装苹果笔记本垃圾清理提示软件已损坏
- idea字体提示忽略大小写
- 关于笔记本电脑每次开机都提示系统文件丢失,装完系统之后,当天可以随便的玩,第二天就出现老毛病(系统文件丢失)
- studio 提示不区分大小写
- 第2章_基本数据类型和基本操作_编程练习Exercise2.11通过控制台进行大小写的切换
- Ubuntu14.04使用su切换到root时提示:Authentication failure
- 惠普HP ENVY 15 Notebook 5代笔记本 HD5500集显成功安装黑苹果10.10.4
- 针对笔记本电源已接通未充电的提示怎么办
- idea 提示忽略大小写
- Android Studio 设置代码提示不区分大小写
- 切换RequiredFieldValidator和RegularExpressionValidator提示信息的控件
- 做一个计时器示例 在页面上有一个文本框和一个普通按钮 在状态栏上显示,单击按钮,开始计时的提示信息 单击按钮时,在文本框显示计数的过程,同时要求按钮上的字,显示为“单击暂停” 此时单击按钮,暂停计时,同时按钮上的字显示为“继续计时”,要求这两种状态来回切换,来完成计数器的功能