Что нового

[Процессы] Как послать команду выбранному процессу?

doncarlleone

Новичок
Сообщения
4
Репутация
0
Есть приложение которое скрыто(запущено с параметром @SW_HIDE ну или просто скрыто в треи с помощью TrayIt)! т.е. в диспетчере задач оно отображается только в виде определенного процесса.
Если приложение развернуть, то все легко делается через ControlSend или ControlCommand, а как послать команду скрытому приложению, не разворачивая его? Команда - имеется в виду определенное сочетание клавиш :smile:
 

Yuri

AutoIT Гуру
Сообщения
737
Репутация
282
Такой вот примерчик.
Скрипт демонстрирует работу с Блокнотом
и сочетанием клавиш Shift + f
Код:
HotKeySet("+f", "SetText")

Run("Notepad.exe")
WinWaitActive("Безымянный - Блокнот")
Sleep(100)
WinSetState("Безымянный - Блокнот", "", @SW_HIDE)

While 1
    Sleep(100)
WEnd

Func SetText()		
    ControlSetText("Безымянный - Блокнот", "", "Edit1", "Мой текст в скрытом окне" )
	Sleep(2000)
	WinSetState("Безымянный - Блокнот", "", @SW_SHOW)
	Exit
EndFunc


Надо нажать Shift + f после скрытия окна.
 
Автор
D

doncarlleone

Новичок
Сообщения
4
Репутация
0
интересный вариант..... вроде работает! :ok: пришлось только поменять параметр ControlSetText на ControlSend

а без HotKeySet это можно исполнить?
нужно чтобы скрипт полностью самостоятельно исполнялся! или же можно тот же HotKeySet (Shift + f) симулировать с помощью простого Send ?
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,603
Репутация
943
Код:
While 1
	SetText()   
    Sleep(100)
WEnd
 

Yuri

AutoIT Гуру
Сообщения
737
Репутация
282
Просто вопрос не правильно я понял.
Вот пример такой:
Код:
Run("Notepad.exe")
WinWaitActive("Безымянный - Блокнот")
Sleep(100)
WinSetState("Безымянный - Блокнот", "", @SW_HIDE)
Sleep(2000)
ClipPut("Мой текст в скрытом окне скопированный из буфера обмена сочетаним клавиш Ctrl + v") 
ControlSend("Безымянный - Блокнот", "", "Edit1", "^v" ) ; ^v это Ctrl + v"
Sleep(2000)
WinSetState("Безымянный - Блокнот", "", @SW_SHOW)
Exit
 
Автор
D

doncarlleone

Новичок
Сообщения
4
Репутация
0
Оба варианта рабочие! понял почему у меня не получалось.....
СПАСИБО!
 
Верх