Windows Vista中很多朋友抱怨無法正常使用輸入法例如無法正常使用五筆輸入無法使用紫光拼音無法使用拼音加加等尤其是在IE浏覽器裡運行的時候
這時候一般是由於IE保護模式的作用由於IE保護模式依賴於UACUIPI和MIC的作用所以大概可以認為是UACUIPI或者MIC的安全功能導致這些輸入法出現問題
一山不容二虎
保護模式下的IE進程運行在低級別所以無法寫入用戶配置文件的區域這樣就可以阻止惡意網頁破壞用戶和系統數據同時IE會自動把這種寫入操作重定向到一個特定的區域這樣既能夠確保安全同時又能讓IE的組件和加載項繼續正常運行
但是如果IE加載項必須要和一個中級的進程一起共享數據那麼可能就會有問題因為這時候IE進程(加載項)所訪問的數據實際上被重定向了而中級依然會去訪問原來的位置這可能導致錯誤
解決的辦法修改這些加載項讓它和外部進程一樣同時有權限訪問某個特定的區域或者讓外部進程也運行在低級級別
此外也可以手工修改系統把該共享區域設置為允許低級進程訪問
UIPI惹的禍
如果IE加載項需要給外部進程發送Windows消息就會被阻止這是由於UIPI的作用只允許高級進程給平級或者低級的進程發送消息這有點類似以前的地下黨只允許上級聯系下級(單線聯系)但是這可能會對一些老的輸入法產生影響導致無法正常工作
解決的辦法對輸入法進行修改允許外部進程接受指定的Windows消息或者使用RPC等安全機制在IE進程和高級進程之間通信
目前只能手動修改系統強行禁用UIPI確保輸入法的兼容性不過這會減弱系統的安全性同時也等於閹割了IE保護模式的功能(盡管系統提示IE保護模式仍然在起作用實際上已經被大大削弱)
在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System新建一個DWORD鍵值EnableUIPI設置為即可
重啟系統再測試幾下應該可以解決類似紫光拼音拼音加加的問題而且是真正的徹底解決
From:http://tw.wingwit.com/Article/Fault/201311/10564.html