PDA

Показать полную графическую версию : Поиск значка в трее по процессу


sov44
11-11-2017, 08:50
Нужно по имени процесса нужно найти значок в трее, кликнуть по нему правой кнопкой мыши и в раскрывшемся меню найти и нажать пункт "Настройка".

Iska
11-11-2017, 09:29
sov44, искать сейчас даже не возьмусь, ибо не помню, что именно следует искать (детали совершенно вылетели из головы), но помнится, что недавно, в пределах пяти-семи лет, либо здесь, либо в Сообществе (http://autoit-script.ru/) (может, стоит и там спросить, вдруг вспомнят) примерно таковое было, и даже с кодом: процесс → поиск значка → вызов меню → выбор пункта меню.

Казбек
11-11-2017, 11:03
[решено] Можноли в Autoite отредактировать значок скрипта который появляеться в сис.трее? (http://forum.oszone.net/thread-150816.html)
Думаю, что будет актуально, особенно, в свете предыдущей темы sov44:
со сменой значка в трее с KFA на привычный KAV. »

Там же поясняется, кстати:
иными словами при клике на значке в сист.трее левой или правой клавишей мышки, появится трей-меню

Iska
11-11-2017, 11:10
Казбек, там про свой собственный значок скрипта. Явно другой скрипт помнится.

sov44, ну, вот отсюда (http://forum.oszone.net/post-1549478.html#post1549478) можно начать танцевать.

sov44
11-11-2017, 12:01
Пока так, нужно ещё найти решение по перебору меню и определению вкладки "Настройка" ;http://autoit-script.ru/index.php?topic=24457.msg139568#msg139568
#include <GuiToolbar.au3>

Global $tray, $search = "Kaspersky"

$tray = ControlGetHandle("[class:Shell_TrayWnd]", "", "ToolbarWindow321")
If FindClick($search) Then Exit

ControlClick("[class:Shell_TrayWnd]", "", "Button1")
$tray = ControlGetHandle("[class:NotifyIconOverflowWindow]", "", "ToolbarWindow321")
If Not FindClick($search) Then MsgBox(0, "", "Кнопка с текстом '" & $search & "' не найдена", 7)

Func FindClick($text)
For $i = 0 To _GUICtrlToolbar_ButtonCount($tray) - 1
If StringInStr(_GUICtrlToolbar_GetButtonText($tray, _GUICtrlToolbar_IndexToCommand($tray, $i)), $text) > 0 Then
_GUICtrlToolbar_ClickIndex($tray, $i, "RIGHT")
Return 1
EndIf
Next
Return 0
EndFunc

furr7325@vk
03-12-2017, 13:26
https://youtu.be/tmaVEk-zhRE вот может поможет.




© OSzone.net 2001-2012