-
Notifications
You must be signed in to change notification settings - Fork 0
Home
繁體中文 · English
Windows 小工具,控制輸入法在程式之間的行為:切換視窗時延續你最後選擇的輸入模式(中文/英數),並可把指定程式綁定到固定的輸入語言 —— 連讀不到執行檔的程式也行,例如有防作弊的全螢幕遊戲。
本工具還在開發中,沒有程式碼簽章憑證。因此 Windows Defender 可能把它判定為病毒並直接刪除,已知的偵測名稱是
Behavior:Win32/Persistence.A!ml。那個偵測針對的是「開機時自動啟動」所建立的登入工作 —— 任何提供開機自動啟動的程式都必須做同樣的事,而未簽章的程式做這件事就會被行為監控盯上。已向微軟提交誤判回報,但沒有人能保證防毒軟體的判斷。
原始碼、建置流程與發佈產物全部公開,由 GitHub Actions 從對應的 tag 建置,你可以自行檢視或重建。在此前提下,是否要繼續使用請自行決定。
遇到刪除時:改用免安裝的
zip,或不勾選「開機時自動啟動」。
到 Releases 下載三種之一:
| 檔案 | 說明 |
|---|---|
...-setup-admin.exe |
需要管理員權限。有防作弊的遊戲需要這個版本 |
...-setup-user.exe |
不需要管理員權限,但無法控制提權的程式 |
...-x64.zip |
免安裝,解壓即用 |
安裝時勾選 開機時自動啟動。裝好就會運作,不需要其他設定。
程式常駐在通知區域 —— 螢幕右下角、時鐘左邊。Windows 11 預設把新圖示收起來,要先點時鐘旁的 ⌃ 才看得到。圖示是藍色圓角方塊裡一個白色的「中」。
兩種常見的攔阻:
- 藍色的「Windows 已保護您的電腦」→ 點「更多資訊 → 仍要執行」。檔案未簽章,這是信譽警告而非病毒偵測。
-
防毒軟體把安裝檔刪掉 → 未簽章的安裝檔常被啟發式誤判。改用免安裝的
zip,功能完全相同。
Windows 把輸入法狀態綁在每個執行緒上,不是全域的。這是設計而非缺陷,但造成的結果是:你剛按 Shift 切成英數,換個視窗又跳回中文。
先試 Windows 內建的設定 —— 設定 → 時間與語言 → 輸入 → 進階鍵盤設定 →「允許我為每個應用程式視窗使用不同的輸入法」。關掉它會讓輸入法本身變成全域的。若這樣就解決了你的問題,你不需要這個工具。
它沒有覆蓋到的是中/英轉換模式:依實測,那仍然是各視窗獨立記憶。這個工具補的正是這一段。
還有一種情況內建設定完全處理不了 —— 使用 raw input 的全螢幕遊戲直接讀鍵盤裝置,不參與輸入法的狀態管理,Windows 的任何設定對它們都無效。Helldivers 2 就是這種,這也是這個工具最初的目的。
在 A 視窗用中文打字,切到 B 視窗時中文模式會被還原。你在 B 按 Shift 改成英數,切到 C 視窗還原的就是英數 —— 跟著你最近一次的手動切換走。不想要就在右鍵選單取消勾選。
把特定程式固定在某個輸入語言:終端機永遠英文、Word 永遠中文。右鍵選單 → 程式綁定輸入語言…
- 瀏覽 選出執行檔 → 只對那個位置的程式生效
- 只填檔名(
notepad.exe)→ 不管裝在哪都適用 - 用剛才的程式 → 自動填入你開這個視窗之前用的程式
- 用視窗類別 → 給讀不到執行檔的程式用,見下面的教學
- 在 Helldivers 2 中控制中文輸入法 —— 有防作弊的遊戲看不到執行檔,要用視窗類別綁定。同樣步驟適用於其他這類程式。
把滑鼠停在圖示上,不要點。停留就會顯示狀態;點下去會讓你想查的程式失去焦點,看到的就不是它了。
| 行 | 意思 |
|---|---|
| 當前程式 | 目前在最前面的程式 |
| 綁定語言 | 規則指定給它的語言 |
| 實際語言 | 它現在真正在用的語言 |
| 上次切換嘗試 | 有沒有成功 |
綁定語言與實際語言一致就代表正常。若最後多一行「一般權限 - 看不到提權的程式」,代表本工具沒有以管理員身分執行。
左鍵雙擊圖示可看到更完整的狀態,包括開機自動啟動目前用的是哪一種機制。
「當前程式」顯示 class: 開頭的東西
正常,不是故障。有些程式(多半是有防作弊的遊戲)不允許其他程式讀取它的檔案位置,這時本工具改用視窗類別辨識它。那串 class:... 就是綁定規則要填的內容。
要不要以管理員身分執行? 要控制本身以管理員身分執行的程式(多數有防作弊的遊戲都是)就必須提權 —— Windows 不讓權限較低的程式讀取權限較高的程式的視窗,連視窗類別都讀不到。
用 ...-setup-admin.exe 安裝並勾選開機自動啟動,登入時就會自動以管理員身分啟動且不彈 UAC。臨時要提權時用托盤選單的 以管理員身分重新啟動。
只在意一般程式的話,...-setup-user.exe 完全夠用。
綁定的是語言,不是特定輸入法 中文、英文、日文可以分別綁定。但同一個語言裝了多個輸入法(注音和倉頡都算中文)時無法指定其中某一個,會用第一個已安裝的。
有些程式切換後又自己變回去 本工具會重試幾次,若該程式堅持用自己的設定就不再勉強 —— 這是刻意的,避免互相搶。
會不會被防作弊誤判? 不修改遊戲、不讀寫它的記憶體、不注入任何東西、不模擬按鍵。切換交給 Windows 自己的輸入法設定執行,對有防作弊的程式更是完全不發送任何訊息。完整清單與判斷依據在 Helldivers 2 那頁。
介面語言跟著 Windows 的顯示語言自動選繁體中文或英文。安裝程式的畫面只有英文。深色模式只作用在視窗標題列。
ImeModePersistence · 下載 / Releases · 問題回報 / Issues · README · 設計筆記 / Design notes · MIT
本 Wiki 是操作說明;實作理由與被否決的做法記在設計筆記。發佈的檔案未經簽章。 This wiki is the how-to; implementation reasoning and rejected approaches live in the design notes. Released files are unsigned.
繁體中文
English
简体中文
日本語
한국어