輸入法的注冊(cè)、安裝和卸載_第1頁
輸入法的注冊(cè)、安裝和卸載_第2頁
輸入法的注冊(cè)、安裝和卸載_第3頁
輸入法的注冊(cè)、安裝和卸載_第4頁
輸入法的注冊(cè)、安裝和卸載_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

輸入法的注冊(cè)安裝和卸載注冊(cè)輸入法輸入法的安裝和普通應(yīng)用程序有一個(gè)大的區(qū)別是,除了復(fù)制文件到安裝目錄、做一些必要的設(shè)置外,還需要向Windows系統(tǒng)注冊(cè)這個(gè)輸入法。我們前期一篇博文TSF(TextServiceFramework)簡(jiǎn)介中談到,Windows有兩種輸入法的框架,IMM32和CTF。下面分別說下兩種情況的注冊(cè)。IMM32框架每個(gè)輸入法要將自己注冊(cè)為一個(gè)KeyboardLayout,具體來說做以下幾件事:A?在注冊(cè)表中HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/KeyboardLayouts,創(chuàng)建一個(gè)新的Key,名字為xxxx0804(低位表示語言,這里0804表示簡(jiǎn)體中文;高位表示設(shè)備句柄,0000表示默認(rèn)的physicallayout,如00000804表示簡(jiǎn)體中文英文鍵盤)。譬如:[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/KeyboardLayouts/E0200804]"IMEFile"="***.IME""LayoutFile"="kbdus.dll""LayoutText"="微軟拼音輸入法2010""LayoutDisplayName"="@C://ProgramFiles(x86)〃***//***.DLL,-101"***.IME為一個(gè)傳統(tǒng)的動(dòng)態(tài)鏈接庫,只是擴(kuò)展名不一樣。它必須export幾個(gè)IMM框架必須要的函數(shù)接口。B.Enable這個(gè)輸入法,譬如:[HKEY_CURRENT_USER/KeyboardLayout/Preload]"1"="00000804""2"="e0200804"這里表示語言欄會(huì)顯示兩個(gè)keyboardlayout:1為簡(jiǎn)體中文鍵盤,2為注冊(cè)的某簡(jiǎn)體中文輸入法C.復(fù)制IMSCxxx.ime到system32目錄下通過這三步,Windows就知道了這個(gè)輸入法,并將其顯示在語言欄中。CTF框架CTF框架下,一個(gè)輸入法為一個(gè)TIP(TextInputProcessor),其首先必須注冊(cè)為一個(gè)COM組件。通過ITfInputProcessorProfileMgr::RegisterProfile()接口注冊(cè)TIP的CLSID和ProfileID。這等價(jià)于下面寫注冊(cè)表的方式:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}IconFile=SZ:Iconlndex=DWORD:Enable=DWORD:[0|1]SubstituteLayout=SZ:CLSID代表TIP,同時(shí)指容納TIP的COM的GUID,ProfilelD是指具體某個(gè)輸入法的ID,一個(gè)COM可以包含多個(gè)輸入法ProfileID。譬如,微軟拼音2010就在一個(gè)COM中實(shí)現(xiàn)了兩個(gè)輸入法:新體驗(yàn)和簡(jiǎn)捷,以滿足不同用戶需求?;蛘呤褂美辖涌趤碜?cè)通過ITfInputProcessorProfiles::Register()注冊(cè)CLSID通過ITfInputProcessorProfiles::AddLanguageProfile()添加Ianguageprofile-可以添加不同語言的多種的profile這等價(jià)于:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}Description=SZ:Iconlndex=DWORD:通過ITflnputProcesorProfiles::EnableLanguageProfileByDefault()來缺省Enable或disable某profile.-這個(gè)設(shè)置是系統(tǒng)級(jí)別,即應(yīng)用于不同系統(tǒng)中的不同用戶.-如果沒有調(diào)用此接口,默認(rèn)是enable-可以在HKCU中覆蓋此設(shè)置這等價(jià)于:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}Enable=DWORD:[0|1]設(shè)置profile的名字:調(diào)用ITfInputProcessorProfilesEx::SetLanguageProfileDisplayName().-可選步驟.注意設(shè)置不同語言的名字。這等價(jià)于:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}設(shè)置可替換的keyboardlayout(僅使用鍵盤TIP)-ITflnputProcessorProfiles::SubstituteKeyboardLayout()為profile設(shè)置可替換的hkl。當(dāng)焦點(diǎn)從Ciceroaware的控件切換到non-Ciceroaware的控件上時(shí),這個(gè)hkl會(huì)被用到。這等價(jià)于:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}SubstituteLayout=SZ:可選-在控制面板輸入法對(duì)話框中隱藏profileHKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}HiddenlnSettingUI=DWORD:[0|1]如果此鍵值不存在,則默認(rèn)為0,即此profile顯示在控制面板輸入法對(duì)話框中順便提一下,在當(dāng)前用戶下設(shè)置默認(rèn)輸入法:ITfInputProcessorProfile::SetDefaultLanguageProfile()這只影響到新創(chuàng)建線程,而不會(huì)對(duì)已經(jīng)運(yùn)行的線程產(chǎn)生影響。當(dāng)然,重啟后,在所有線程都會(huì)生效。次接口只會(huì)影響當(dāng)前用戶,對(duì)系統(tǒng)中其他用戶無影響這等價(jià)于:HKEY_CURRENT_USER/SOFTWARE/Microsoft/CTF/Assembly/[langid]/{TIP'sCategory}Default=SZ:TIP'sCLSIDKayboardLayout=DWORD:Profile=SZ:TIP'sguidProfile從上面可以看到,無論哪種框架,都需要向注冊(cè)表HKEY_LOCAL_MACHINE路徑寫入輸入法信息,另外不同輸入法也可能注冊(cè)自己的組件到操作系統(tǒng)中,所以安裝時(shí):第一,需要administrator權(quán)限;要求所用戶必須屬于administrators組的成員;第二,如果系統(tǒng)中安裝了某些安全軟件,其可能阻擋寫入注冊(cè)表系統(tǒng)路徑(如HKEY_LOCAL_MACHINE),這時(shí)候安裝就不能成功。要么暫時(shí)關(guān)閉其功能,要么在其提示是選擇“允許寫入”,要么卸載它后再安裝.安裝和卸載微軟拼音輸入法2010從論壇和其他用戶反饋上,在安裝和卸載微軟拼音輸入法2010時(shí)有些用戶會(huì)遇到問題。如果安裝時(shí)解決上面兩點(diǎn)還存在問題(下面所說僅針對(duì)從微軟拼音主頁/china/pinyin/下載的微軟拼音輸入法2010,不適用于Office2010中文版中包含的微軟拼音輸入法),那按以下步驟確定問題:如果安裝失敗,要確認(rèn)系統(tǒng)中是否殘留以前安裝過的。下載一個(gè)myuninstaller,這是個(gè)綠色軟件,直接運(yùn)行:上面顯示的是x86系統(tǒng)中的軟件列表,如果存在紅線中兩個(gè)安裝包中任意一個(gè),全部卸載,MicrosoftOfficeIME(Chinese(Simplified))2010MicrosoftOfficeIMESS(Chinese(Simplified))2010安裝原始安裝包。如果還失敗,可以試試某用戶的方法/Forums/zh-CN/2087/thread/2af44c79-4005-4ebe-92d3-1fa003526353。理論上來說,只要管理員權(quán)限就能寫入HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/WindowsNT/CurrentVersion/lmageFileExecutionOptions,但某些系統(tǒng)中

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論