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:50:18      編輯:Windows Vista教程

  在實際的使用過程中,發現這個方法在大多數時候可以正常工作,但是如果在打開IE之前,已經調用過紫光拼音,則可能無法在IE浏覽器裡順利啟動紫光拼音。有人曾說,Windows Vista沒有自帶的工具,無法查看和設置文件夾的完整性級別。

  果真是這樣嗎?

  筆者有幸在Tech.Ed北京聽了IE保護模式的負責人Robert Gu的一堂課,了解到Windows Vista其實自帶了一款命令行工具Icacls.exe,可以用它來查看和設置指定文件夾的完整性級別。

  提示

  Robert Gu,微軟總部的首席開發主管,目前負責IE 7安全的開發。他是EFS算法的發明者,曾主導EFS、PKI的開發,是華人中的驕傲。

  現在我們可以大膽猜測,既然有現成的Icacls.exe可供使用,則完全可以用它來把紫光拼音的工作目錄“%AppData%\Unispim”的完整性級別設置為“低級”,這樣無論是IE進程(低級)和外部的進程(中級),都可以訪問該工作目錄,紫光拼音就可以工作正常。

  說做就做,接下來就以Windows Vista RC2 Build 5744為例進行介紹(需要注意的是,該Icacls命令在RC1下無法正常工作):

  1.首先需要給當前的帳戶增加“修改一個對象標簽”特權,其內部名稱為SeRelabelPrivilege。方法是運行secpol.msc,打開“本地安全策略”管理單元,在左側控制台樹中展開本地策略、用戶權限分配,在右側詳細窗格裡定位到“修改一個對象標簽”策略項,雙擊該策略項,把當前的登錄帳戶添加進去,如附圖所示。

  2.注銷重新登錄,然後以管理員權限運行命令提示符,在命令提示符下輸入以下命令:

  Whoami/all |find /i "SeRelabelPrivilege"

  結果如附圖所示,這表示當前登錄用戶已經擁有SeRelabelPrivilege特權,只是狀態為禁用。

  3.然後運行以下命令:

  Icacls.exe %AppData%\Unispim /SetIntegrityLevel Level:L

  命令結果如附圖所示,表示成功完成。

點擊放大此圖片

  4.可以繼續運行以下命令,查看%AppData%\Unispim目錄的完整性級別:

  Icacls.exe %AppData%\Unispim

  命令結果如附圖所示,表示該目錄的強制完整性級別為“低”。

點擊放大此圖片

  經過這樣處理以後,就可以正常在IE浏覽器裡啟用紫光拼音了,而無法針對特定網站禁用IE保護模式。如果偶爾發現無法在IE裡啟動紫光拼音,這時候不要著急,只需關閉其他啟用輸入法的程序,一般是Outlook、Word、Notepad等編輯程序,然後就可以在IE裡正常使用紫光拼音。

  接下來,還有兩個問題:

  1 細心的讀者朋友發現用Whoami/all命令查看當前用戶的訪問令牌時,發現SeRelabelPrivilege特權是禁用的。而這個特權正是用來設置對象的完整性級別,那麼這時候為什麼Icacls命令可以成功運行?

  當運行Icacls命令設置目錄的完整性級別時,該Icacls進程的訪問令牌會自動啟用SeRelabelPrivilege特權,以便命令能夠順利完成。

  2。由於Windows Vista RC1下的Icacls命令不能正常工作,這裡可以下載一個第三方的命令行工具chml.exe。

Copyright © Windows教程網 All Rights Reserved