Wolfgang Chien's Homepage | Delphi學習筆記 - 問答篇 |
因我沒有 MSDN , 是否有哪位先進可告訴我如何可得知 user 在 Windows 3.1 中文版中預設的輸入法.
可行的方法有兩個.
![]() |
甲. CWindows 3.1 有關系統已安裝的 IME 資訊記錄在 IMEINFO.INI 檔中, 以 Delphi TIniFiles 中那幾存取 .ini 的函數, 應該不難取出第一組 IME 的設定資料. |
![]() |
乙. 以 IMPGetFirstIME() 取得 IME 的資訊. 它的 C 原型宣告是:
BOOL WINAPI IMPGetFirstIME(hWnd, lpIMEPro) 您可以在 implementation 節中宣告如下: function IMPGetFirstIME(hWndIme: HWND; lpImePro: pTImePro): BOOL; far; external 'winnls.dll'; 其中, lpIMEPro 指向的結構, 請參考小弟的作品 CEdit26b.zip(Delphi學習筆記創作篇), 自解壓縮後, 在 CEdit\IME31\IME31.PAS 這個單元中有其 Delphi 宣告格式. |
另外, 有件事建議您不妨考慮看看, 在您的應用程式中加入各使用者的擅用輸入法的設定功能, 因為, 同一部機器可能有不只一位使用者, 直接抓系統設定, 說不定日後會有一點困擾, 要使用者去 主群組 | 控制台 | 移除輸入法 | 重新按喜好次序安裝各輸入法, 對他(她)們而言有點困難.
首頁 | 學習筆記 | 主題公園 | 軟體下載 | 關於本站 | 討論信群 | 相約下次 |