Я создал скрипт AHK, который добавляет метаданные к видеоклипам в Avid Media Composer (программное обеспечение для редактирования видео). Он делает это путем входа во все необходимые подменю и посылает щелчки мышью в те места на экране, которые облегчают трудоемкую задачу, когда нужно делать это снова и снова в течение всего дня.

Тем не менее, я хочу, чтобы скрипт запускался только в Avid Media Composer и больше ничего. К машине подключены другие системы хранения, и я бы не хотел, чтобы скрипт случайно заходил в другие файлы / папки, кто знает, что делать с важными данными.

Я пытался использовать #IfWinActive, но я не очень опытен и не уверен, почему я не могу заставить его работать.

Вот что мне нужно сделать:

Если активным окном является «Avid Media Composer», запустите «Мой код». Если активным окном является что-либо, кроме Avid Media Composer, Msgbox «Avid Media Composer должен быть активным окном для запуска этой задачи».

-

Заголовок окна, класс и процесс

Avid Media Composer Mojo DX

ahk_class Qt5QWindowIcon

ahk_exe AvidMediaComposer.exe

-

Мой код:

F3::

 {
    BlockInput, MouseMove
    Hotkey, LButton, DummyLabel, On
    Hotkey, RButton, DummyLabel, On
    Hotkey, MButton, DummyLabel, On
    Sleep, 20
    Send, {LAlt}
    Sleep, 20
    Send, {Right}
    Sleep, 200
    Send, {Right}
    Sleep, 20
    Send, {Right}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Right}
    Sleep, 20
    Send, {Enter}
    Sleep, 100
    MouseClick, Left, 107, 30
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Down}
    Sleep, 20
    Send, {Enter}
    Sleep, 100
    MouseClick, Left, 346, 38
    Sleep, 200
    Send, ^v
    Sleep, 200
    Send, {Enter}
    Sleep, 200
    Send, {Enter}
    Sleep, 200
    MouseClick, Left, 91, 102
    Sleep, 100
    MouseClick, Left, 92, 100
    Sleep, 100
    MouseClick, Left, 143, 154
    Sleep, 100
    Send, {Down}
    BlockInput, MouseMoveoff
    Hotkey, LButton, DummyLabel, Off
    Hotkey, RButton, DummyLabel, Off
    Hotkey, MButton, DummyLabel, Off

 }
return

DummyLabel:
return

Какой правильный код для этой серии команд должен выполняться только внутри самого Avid Media Composer и ничего больше?

Большое спасибо за любую помощь заранее.

1 ответ1

2

Вы должны взглянуть на следующие ссылки:

Согласно вашей информации возможны следующие три:

SetTitleMatchMode, 2
#IfWinActive Avid Media Composer

#IfWinActive ahk_class Qt5QWindowIcon

#IfWinActive ahk_exe AvidMediaComposer

Пример :

SetTitleMatchMode, 2
#IfWinActive Notepad
F3:: MsgBox, IN
return
#IfWinNotActive Notepad
F3:: MsgBox, OUT
return

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .