此 VBS 使用 Word.Application 来查询 CAPS 状态。如果 CAPS 为 ON,那么我们将其关闭。
Set objShell = CreateObject("WScript.Shell")
Set objWord = CreateObject( "Word.Application" )
if objWord.CapsLock <> 0 then
' turn capslock off
objShell.SendKeys "{capslock}"
end if
objWord.Quit
为了将所有内容保存在一个批处理文件中,我们生成了一个临时 .vbs 文件,执行并删除它以确保 CAPS 处于关闭状态。
set BAT_HOME=%~dp0
echo %BAT_HOME%
cd %BAT_HOME%
echo Set objShell = CreateObject("WScript.Shell") > temp.vbs
echo Set objWord = CreateObject( "Word.Application" ) >> temp.vbs
echo if objWord.CapsLock ^<^> 0 then >> temp.vbs
echo objShell.SendKeys "{capslock}" >> temp.vbs
echo end if >> temp.vbs
echo objWord.Quit >> temp.vbs
cscript //nologo temp.vbs
del temp.vbs
echo ... do your thing in the batch file