[VBS-] SendKeys遇到輸入法切換問題的心得教學
VBScript的SendKeys常常遇到輸入法切換的問題,
例如:SendKeys要送出英文字,應該要在[英文輸入法]的模式下進行,
但是系統卻切換到[中文輸入法]的模式,導致錯誤.
底下是分享如何解決此問題:
[第1步]
首先如果系統沒有英文輸入法,
請新增一個英文輸入法,
如右圖: https://i.imgur.com/kFtixGl.jpg
[第2步]
將英文輸入法的按鍵順序設定成[Ctrl+Shift+1],
將中文輸入法的按鍵順序設定成[Ctrl+Shift+2],
如右圖: https://i.imgur.com/4bFbrkB.jpg
使用SendKeys強制切換成[英文輸入法]的模式,
這樣系統就不會再跑到[中文輸入法]的模式去了,
最後VBScript程式碼如下:
Set oShell = WScript.CreateObject("WScript.Shell")
oShell.SendKeys "^+1"
之後 SendKeys 的程式碼就是以英文輸入法的模式
[SendKeys的^]代表[鍵盤的Ctrl鍵]
[SendKeys的+]代表[鍵盤的Shift鍵]
當然,如果你要強制用中文輸入法的模式來SendKeys,
最後VBScript程式碼如下:
Set oShell = WScript.CreateObject("WScript.Shell")
oShell.SendKeys "^+2"
之後 SendKeys 的程式碼就是以中文輸入法的模式
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.139.170.200 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/EzHotKey/M.1630734814.A.554.html
※ 編輯: OSDBNetwork (223.139.170.200 臺灣), 09/04/2021 13:55:05
EzHotKey 近期熱門文章
PTT數位生活區 即時熱門文章