實作 Windows 平台上免安裝的行列三十輸入法
使用 Keyboard hook 來取得使用者的鍵盤輸入的輸入法程式,
探討這方面的實作可能性...
不過因為個人程設功力的關係最多只能寫到這樣,
小缺點有點多,加上一些處理直接簡化省略掉,所以沒什麼實用價值
加上行列三十是 Windows XP 的內建輸入法,價值好像更低(囧)
不過如果沒有權限灌行列又需要打字急用的時候,應該可以派上用場
=======================================================
想法很簡單,就是使用 keyboard hook 先攔劫使用者的按鍵,
接著再將按鍵 Post Message 到我們的輸入法應用程式,
輸入法應用程式再進行判斷
***--- Mutex
使用 Mutex 判斷程式是否已執行,確定只執行一次
***--- 送字 (update)
中文與英文全形:
使用剪貼薄送字(SendInput 送出 CTRL + V)
使用剪貼薄送字(SendInput 送出 SHIFT + INSERT) -> 預設值
使用 WM_IME_CHAR
英文半形:使用 SendMessage 送出 WM_IME_CHAR
使用 Hotkey 來取得 ESC/Back Sapce 的按鍵(Update)
ESC/Back Space 送字的方式為使用 SendInput 送出 Back Space
Note: 使用剪貼薄在一些軟體仍然會有不相容的情況,但是應該相容於大部份的軟體
*** --- 支援規則書的功能
基本輸入,一級簡碼和二級簡碼
支援 2^ (W) 符號輸入與 Shift + < or > 換頁
使用詞庫支援日文假名輸入(only support Unicode)
-> 如果使用者加詞 OK,但是程式處理會有問題
*** --- 中英文模式切換 (update)
使用 CTRL+SPACE 切換行列/英數模式,使用 SHIFT+SPACE 切換全形/半形模式
*** --- 隱藏視窗與恢復
使用 SHIFT+ F8 隱藏視窗,SHIFT+F9 恢復視窗
*** --- 使用平台
目前僅在 Windowx XP SP2/Windows 2000 SP3 上實測過
** License: BSD/MIT
網址:
http://ray2501.googlepages.com/array30ex
Source code (v1.1.4)
http://ray2501.googlepages.com/Array30Ex.zip
Binary File:
http://ray2501.googlepages.com/Array30Ex-bin.zip
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.211.18.238
※ 編輯: seed2501 來自: 218.211.18.238 (06/03 00:50)
推
06/03 09:25, , 1F
06/03 09:25, 1F
※ 編輯: seed2501 來自: 122.146.55.81 (06/22 07:29)
※ 編輯: seed2501 來自: 122.146.35.199 (07/03 20:28)
討論串 (同標題文章)
完整討論串 (本文為第 1 之 8 篇):
Array 近期熱門文章
PTT數位生活區 即時熱門文章