Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Windows Vista系統教程 >> Windows Vista教程 >> 解決Windows Vista無法正常使用輸入法

解決Windows Vista無法正常使用輸入法

日期:2017/2/7 15:46:30      編輯:Windows Vista教程
  很多朋友抱怨在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即可。

  重啟系統,再測試幾下,應該可以解決類似紫光拼音、拼音加加的問題,而且是真正的“徹底”解決。
Copyright © Windows教程網 All Rights Reserved