Vista 下輸入法無法切換、候選視窗異常,多因 IE 保護模式依賴的 UAC、UIPI、MIC 安全機制導致。核心在於「低權限」IE 進程無法與「中等權限」外部程序正常共享資料或傳遞訊息。
IE 保護模式下進程以「低」完整性等級執行,寫入使用者設定檔會被重導向至特定區域。若輸入法(加載項)需與外部「中等」權限進程共享資料,雙方存取位置不一致導致錯誤。
解決思路: 修改加載項與外部進程共同存取特定區域,或降低外部進程權限至「低」,或手動設定共享區域允許「低」權限存取。
UIPI 僅允許高權限進程向同級/低權限進程發送視窗訊息。輸入法若需向外部進程發送訊息會被阻擋,導致無法運作。
解決思路: 修改輸入法允許接收指定訊息,或改用 RPC 等安全機制通訊。現階段唯一可行方案為強制停用 UIPI(犧牲部分安全性)。
regedit),定位至:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\SystemEnableUIPI,設定為 0。注意: 停用 UIPI 會削弱 IE 保護模式防護能力,雖系統仍顯示保護模式啟用,實際防禦已大幅降低。權衡相容性與安全性後自行決定。