線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:4617
推到 Plurk!
推到 Facebook!

WIndows 7抓取所有輸入法及切換輸入法程式

 
leveon
資深會員


發表:30
回覆:389
積分:303
註冊:2012-02-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2013-11-28 14:13:58 IP:61.228.xxx.xxx 訂閱
僅對TSF輸入法有效

liangyan5811
一般會員


發表:5
回覆:8
積分:2
註冊:2011-12-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2014-03-15 20:02:07 IP:183.45.xxx.xxx 訂閱

===================引 用 leveon 文 章===================
僅對TSF輸入法有效


你附件的代码是空的啊
------
天道忌满,人忌道全。
leveon
資深會員


發表:30
回覆:389
積分:303
註冊:2012-02-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2014-04-02 21:16:21 IP:61.231.xxx.xxx 訂閱
之前有回文過做法
但被刪了
http://delphi.ktop.com.tw/board.php?cid=30&fid=76&tid=105578

無言..不想講了 只留EXE證明其可行性

===================引 用 liangyan5811 文 章===================

===================引 用 leveon 文 章===================
僅對TSF輸入法有效


你附件的代码是空的啊
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2014-04-03 09:45:15 IP:60.251.xxx.xxx 訂閱
leveon前輩您好:
這篇文章我之前有看到,不知道為什麼會消失,可能要請bestlong看後台
造成您的不便,請您多多見諒...


===================引 用 leveon 文 章===================
之前有回文過做法
但被刪了
http://delphi.ktop.com.tw/board.php?cid=30&fid=76&tid=105578

無言..不想講了 只留EXE證明其可行性

===================引 用 liangyan5811 文 章===================

===================引 用 leveon 文 章===================
僅對TSF輸入法有效


你附件的代码是空的啊
wangccw
一般會員


發表:21
回覆:39
積分:17
註冊:2005-01-30

發送簡訊給我
#5 引用回覆 回覆 發表時間:2015-06-30 18:43:46 IP:210.63.xxx.xxx 訂閱
有辦法給我專案檔嗎?或去哪邊找文件?
蠻有興趣的,謝謝。
harpist
資深會員


發表:3
回覆:251
積分:430
註冊:2002-10-03

發送簡訊給我
#6 引用回覆 回覆 發表時間:2015-07-06 00:48:53 IP:106.104.xxx.xxx 訂閱
請參考Text Services Framework
https://msdn.microsoft.com/en-us/library/ms629032(VS.85).aspx
請參考ITfInputProcessorProfiles interface
https://msdn.microsoft.com/zh-tw/library/windows/desktop/ms538984(v=vs.85).aspx

粗略試了一下,簡略如下(僅重點提示)

#include
typedef HRESULT (WINAPI *PTF_CREATEINPUTPROCESSORPROFILES)(ITfInputProcessorProfiles**);

HMODULE hMSCTF = LoadLibrary(TEXT("msctf.dll"));
PTF_CREATEINPUTPROCESSORPROFILES pfnCreateInputProcessorProfiles = (PTF_CREATEINPUTPROCESSORPROFILES)GetProcAddress(hMSCTF, "TF_CreateInputProcessorProfiles");

HRESULT hr;
ITfInputProcessorProfiles *pInputProcessorProfiles;
hr = (*pfnCreateInputProcessorProfiles)(&pInputProcessorProfiles);
然後就可以開始了

大概就像這樣


===================引 用 wangccw 文 章===================
有辦法給我專案檔嗎?或去哪邊找文件?
蠻有興趣的,謝謝。
------
~§~迷時師渡,悟了自渡~§~
wangccw
一般會員


發表:21
回覆:39
積分:17
註冊:2005-01-30

發送簡訊給我
#7 引用回覆 回覆 發表時間:2015-07-06 10:24:14 IP:210.63.xxx.xxx 訂閱
謝謝 harpist 的回應,有沒有 Delphi 版的寫法。
以下是找到的 delphi msctf unit 檔,但看不懂怎麼用,有人有辦法寫一個範例嗎?感恩。

msctf_tlb.pas











編輯記錄
wangccw 重新編輯於 2015-07-06 13:52:57, 註解 無‧
wangccw 重新編輯於 2015-07-06 16:58:00, 註解 無‧
wangccw 重新編輯於 2015-07-06 17:03:04, 註解 無‧
系統時間:2024-04-20 2:47:42
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!