티스토리 뷰
728x90
배치파일로 키보드 입력값을 보내는 방법을 알아보겠습니다.
일단 cmd명령어로 키보드 입력값을 보내는 방법은 없습니다.
하지만 여러 가지 방법으로 키보드 입력을 보낼 수 있습니다.
※ 사용할 수 있는 특수 키는 아래의 표에서 확인할 수 있습니다.
※ 그리고 ::로 시작하는 줄은 주석이라서 없애고 사용하셔도 됩니다.
Powershell 이용하기
파워쉘을 이용하는 방법은 코드가 짧습니다.
::여기 안을 바꿔 주시면 됩니다.
powershell "$wshell = New-Object -ComObject wscript.shell; $wshell.SendKeys('hello world')"
powershell "$wshell = New-Object -ComObject wscript.shell; $wshell.SendKeys('hello world')"
VBS이용하기
@echo off
::파일이 저장될 위치와 이름을 변수로 저장했습니다
::파일 이름은 snedkey.vbs입니다.
set file="%temp%\sendkey.vbs"
::vbs 파일을 만듭니다.
::여기서 "여기" 에 키 값을 넣어 주면 됩니다.
(echo Set objShell = WScript.CreateObject("WScript.Shell"^)
echo objShell.SendKeys "hello world") > %file%
::만든 vbs 파일을 실행시킵니다.
::vbs 파일은 wscript로 실행합니다.
wscript %file% | more
::만들었던 vbs파일을 삭제 합니다.
del /q %file%
pause
::파일이 저장될 위치와 이름을 변수로 저장했습니다
::파일 이름은 snedkey.vbs입니다.
set file="%temp%\sendkey.vbs"
::vbs 파일을 만듭니다.
::여기서 "여기" 에 키 값을 넣어 주면 됩니다.
(echo Set objShell = WScript.CreateObject("WScript.Shell"^)
echo objShell.SendKeys "hello world") > %file%
::만든 vbs 파일을 실행시킵니다.
::vbs 파일은 wscript로 실행합니다.
wscript %file% | more
::만들었던 vbs파일을 삭제 합니다.
del /q %file%
pause
Sendkey에서 지원하는 특수 키 값
sendkey에서 사용할 수 있는 키 값입니다.
SendKey예제
마지막으로 몇 가지 sendkey 예제로 글을 마무리하겠습니다.
▶ 윈도우키 누르기 - "^{ESC}"
sendkey에서 윈도우 키는 지원하지 않습니다. 하지만 다른 방법으로 윈도우 키를 누를 수 있습니다.
지금 키보드로 [ctrl] + [ESC]를 눌려 보세요.
윈도우 창이 나왔죠?
그래서 sendkey 키 값은 "^{ESC}"입니다.
▶ [ALT] + [F4] 누르기 - "%{F4}"
alt는 %, F4는 {F4} 이니까 %{F4}로 [alt] + [F4]를 할 수 있습니다.
반응형
'배치파일 / CMD > 배치파일' 카테고리의 다른 글
[배치파일] 마우스 이동 시키기 (13) | 2020.11.06 |
---|---|
[배치파일]자신의 PID값 알아내기 (0) | 2020.10.31 |
[배치파일]프로그램 실행후 종료까지 기다리기 (0) | 2020.10.20 |
[배치파일] CMD창을 항상 위에 배치하는 방법 (2) | 2020.09.07 |
[배치파일]ms단위로 딜레이 하는 방법 (0) | 2020.04.27 |
댓글