特定のプログラムがフォーカス(アクティブ)中にのみクリップボードを監視し、クリップボードが更新されたら目的のプログラムを実行したい
from AHKスクリプト
v2
code: clipboard_observation.ahk
#SingleInstance Force
; クリップボードが更新されると実行されるようにする
OnClipboardChange ClipChanged
; クリップボードが更新された時に実行したい関数
ClipChanged(DataType) {
; プログラムA上でコピーする
if WinActive("ahk_exe プログラムA") {
; プログラムBを走らせる
RunWait 'プログラムB.exe "param with spaces"'
; プログラムBが終了する
}
}
v1
code: clipboard_observation.ahk
#NotEnv
#SingleInstance Force
#Persistent
SendMode Input
SetWorkDir %A_ScriptDir%
; クリップボードが更新されると実行されるようにする
OnClipboardChange("ClipChanged")f
return
; クリップボードが更新された時に実行したい関数
ClipChanged(Type) {
; プログラムA上でコピーする
if WinActive("ahk_exe プログラムA") {
; プログラムBを走らせる
RunWait, プログラムB.exe "param with spaces"
; プログラムBが終了する
}
}