45IT.COM- 电脑学习从此开始!
DIY硬件教程攒机经验装机配置
设计Photoshop网页设计特效
系统注册表DOS系统命令其它
存储主板显卡外设键鼠内存
维修显卡CPU内存打印机
WinXPVistaWin7unix/linux
CPU光驱电源/散热显示器其它
修技主板硬盘键鼠显示器光驱
办公ExcelWordPowerPointWPS
编程数据库CSS脚本PHP
网络局域网QQ服务器
软件网络系统图像安全

解决Windows Vista无法正常使用输入法

电脑软硬件应用网 45IT.COM 时间:2007-10-19 10:23 作者:佚名
  很多朋友抱怨在Windows Vista下无法正常使用输入法,例如无法正常使用五笔输入,无法使用紫光拼音,无法使用拼音加加等。尤其是在IE浏览器里运行的时候。

  这时候一般是由于IE保护模式的作用,由于IE保护模式依赖于UAC、UIPI和MIC的作用,所以大概可以认为是UAC、UIPI或者MIC的安全功能导致这些输入法出现问题。

 
 1. 一山不容二虎

  保护模式下的IE进程运行在“低”级别,所以无法写入用户配置文件的区域,这样就可以阻止恶意网页破坏用户和系统数据。同时IE会自动把这种写入操作重定向到一个特定的区域。这样既能够确保安全,同时又能让IE的组件和加载项继续正常运行。

  但是如果IE加载项必须要和一个“中级”的进程一起共享数据,那么可能就会有问题,因为这时候IE进程(加载项)所访问的数据实际上被重定向了,而“中级”依然会去访问原来的位置,这可能导致错误。

  解决的办法,是修改这些加载项,让它和外部进程一样同时有权限访问某个特定的区域;或者让外部进程也运行在“低级”级别。

  也可以手工修改系统,把该共享区域设置为允许“低级”进程访问。

 
 2. UIPI惹的祸

  如果IE加载项需要给外部进程发送Windows消息,就会被阻止。这是由于UIPI的作用,只允许高级进程给平级或者低级的进程发送消息,这有点类似以前的地下党,只允许上级联系下级(单线联系)。但是这可能会对一些老的输入法产生影响,导致无法正常工作。

  解决的办法,是对输入法进行修改,允许外部进程接受指定的Windows消息。或者使用RPC等安全机制,在IE进程和高级进程之间通信。

  目前,只能手动修改系统,强行禁用UIPI,确保输入法的兼容性。不过这会减弱系统的安全性,同时也等于阉割了IE保护模式的功能(尽管系统提示IE保护模式仍然在起作用,实际上已经被大大削弱)。

  在HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem,新建一个DWORD键值EnableUIPI,设置为0即可。

  重启系统,再测试几下,应该可以解决类似紫光拼音、拼音加加的问题,而且是真正的“彻底”解决。
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
无法在这个位置找到: baidushare.htm
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
推荐知识