2008年7月2日星期三

語言列不見了

同事的電腦發生了一件奇怪的事,輸入法不能切換,語言列消失不見。哈!本以為是件小事,沒想到居然費了一番工夫才解決。
一般狀況是,自己不小心把語言列給關了。如果只是這樣,那就進行下列的步驟再把它叫回來:





  • 進入 [控制台] 後啟動 [地區及語言選項]

  • 點選 [語言] 後,按 [詳細資料] 的按鈕

  • 進入 [文字服務和輸入語言] 的設定畫面後,在 [喜好設定] 中按 [語言工具列] 的按鈕。

  • 進入 [語言列設定值] 的畫面中,勾選 [在桌面顯示語言列]。

  • 勾選好以後按 [確定],即可將語言列叫回來。



如果還不行,就試試下面的程序:





  • 進入 [控制台] 後啟動 [地區及語言選項]

  • 點選 [語言] 後,按 [詳細資料] 的按鈕

  • 進入 [文字服務和輸入語言] 的設定畫面後,點選 [進階]

  • 在 [系統設定] 中有個 [關閉進階文字服務(T)],將勾勾取消後,再按 [確定] 鈕。

[語言列] 其實是 windows\system32\ctfmon.exe 這支程式,上面的動作就是幫我們重新啟動被關掉的 ctfmon.exe ,並且幫我們在 Windows 的機碼中加入自動執行 ctfmon.exe 的部份,讓它可以在進入系統後自動執行。
如果利用 [工作管理員] 來觀察,我們可以發現,當前述的 [關閉進階文字服務(T)] 的選項是勾選時,工作管理員 [處理程序] 清單中,就沒有 ctfmon.exe ,反之則有。
因此,當我們發現 [語言列] 不見時,正常的話,應該也可以手動執行,在 [開始] 裡的 [執行] 輸入:




  • ctfmon

然後,再按 [確定] 鈕就可以。
而機碼的部份則可以將底下的內容貼到記事本:


Windows Registry Editor Version 5.00


[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"ctfmon.exe"="C:\\WINDOWS\\system32\\ctfmon.exe"



將檔案另存為 ctfmon.reg 後,對準檔案答答匯入即可。

今天我遇到是滿特殊的狀況,利用 [控制台] 的 [地區及語言選項] 改了半天都無法正常運作,而方法一中的 [語言工具列] 的按鈕按下去以後,所有選項都是「灰色的」,根本無法勾選要不要 "在桌面顯示語言列"。
前面說「灰色的」,其實它就是一種警示:ctfmon.exe 無法正常運作。因此,記得要進行以下的檢查:



  • 以工作管理員檢查 ctfmon.exe 是否有執行。

  • 檢查自動啟動的機碼中是否有 ctfmon.exe

  • 檢查 windows\system32\ctfmon.exe 是否存在,請注意,它的大小應該約 15k bytes 左右。

今天那台電腦的 ctfmon.exe 檔案大小居然是 0 ,哈哈!試了半天,就是沒想到這個問題。最後只花了一點點時間,將別台電腦中的 ctfmon.exe 複製到 windows\system32 中就解決了。
唉!江湖一點訣,經驗是無價的!

2 則留言:

  1. ctfmon.exe 這個檔案從別的正常電腦複製過來
    但是依然無法執行...

    回覆刪除
  2. HKey 存成reg檔那個
    就解決問題了 超開心的 謝謝你 (膜拜 QAQ

    回覆刪除

 
© 2009. Design by Pocket