knightmare Posted January 26, 2007 Share Posted January 26, 2007 Hi I need to write an AutoIT script that right clicks the icon in the system tray/notification area and then clicks the "exit" option.I tried this with the mouse recorder... Problem is, the icon moves, so the mouse doesn't always hit it.I was trying to get the handle of the icon in the system tray, and this is where I got stuck :/ I google'd and found that someone else like me asked the same question and was not helped ( http://www.autoitscript.com/forum/index.ph...w=&st=& )I also read up on the WinGetHandle function, as well as ued a 3rd party program (Greatis Windowse) with no luck of locating a way to get the handle...Can someone please help me?--KM Link to comment Share on other sites More sharing options...
Xenobiologist Posted January 26, 2007 Share Posted January 26, 2007 Hi, try this: #include<Systray.au3> #include<Array.au3> Global $title = "XXX" ;Global $prcoess = "icqlite.exe" Global $prcoess = "winampa.exe" ;clickSysTrayByTitle($title, "right") clickSysTrayByProcess($prcoess, "right") Func clickSysTrayByTitle($winTitle, $click = "left", $times = 1) Local $a = _SysTrayIconTitles () Local $p = MouseGetPos() For $i = 0 To UBound($a) - 1 If $a[$i] = $winTitle Then $pos = _SysTrayIconPos($i) MouseClick($click, $pos[0], $pos[1], $times, 1) ExitLoop EndIf Next MouseMove($p[0], $p[1], 1) EndFunc ;==>clickSysTray Func clickSysTrayByProcess($winProcess, $click = "left", $times = 1) Local $a = _SysTrayIconProcesses() ;_ArrayDisplay($a, "") Local $p = MouseGetPos() For $i = 0 To UBound($a) - 1 If $a[$i] = $winProcess Then $pos = _SysTrayIconPos($i) MouseClick($click, $pos[0], $pos[1], $times, 1) ExitLoop EndIf Next MouseMove($p[0], $p[1], 1) EndFunc ;==>clickSysTray So long, Mega Scripts & functions Organize Includes Let Scite organize the include files Yahtzee The game "Yahtzee" (Kniffel, DiceLion) LoginWrapper Secure scripts by adding a query (authentication) _RunOnlyOnThis UDF Make sure that a script can only be executed on ... (Windows / HD / ...) Internet-Café Server/Client Application Open CD, Start Browser, Lock remote client, etc. MultipleFuncsWithOneHotkey Start different funcs by hitting one hotkey different times Link to comment Share on other sites More sharing options...
knightmare Posted January 26, 2007 Author Share Posted January 26, 2007 Hi, try this: #include<Systray.au3> #include<Array.au3> Global $title = "XXX" ;Global $prcoess = "icqlite.exe" Global $prcoess = "winampa.exe" ;clickSysTrayByTitle($title, "right") clickSysTrayByProcess($prcoess, "right") Func clickSysTrayByTitle($winTitle, $click = "left", $times = 1) Local $a = _SysTrayIconTitles () Local $p = MouseGetPos() For $i = 0 To UBound($a) - 1 If $a[$i] = $winTitle Then $pos = _SysTrayIconPos($i) MouseClick($click, $pos[0], $pos[1], $times, 1) ExitLoop EndIf Next MouseMove($p[0], $p[1], 1) EndFunc ;==>clickSysTray Func clickSysTrayByProcess($winProcess, $click = "left", $times = 1) Local $a = _SysTrayIconProcesses() ;_ArrayDisplay($a, "") Local $p = MouseGetPos() For $i = 0 To UBound($a) - 1 If $a[$i] = $winProcess Then $pos = _SysTrayIconPos($i) MouseClick($click, $pos[0], $pos[1], $times, 1) ExitLoop EndIf Next MouseMove($p[0], $p[1], 1) EndFunc ;==>clickSysTray So long, Mega th.meger u rule!!! YAAAY! I can kill comodo now Link to comment Share on other sites More sharing options...
Xenobiologist Posted January 26, 2007 Share Posted January 26, 2007 HI, glad I could help you. So long, Mega P.S: Why didn't you use Processkill for killing? Scripts & functions Organize Includes Let Scite organize the include files Yahtzee The game "Yahtzee" (Kniffel, DiceLion) LoginWrapper Secure scripts by adding a query (authentication) _RunOnlyOnThis UDF Make sure that a script can only be executed on ... (Windows / HD / ...) Internet-Café Server/Client Application Open CD, Start Browser, Lock remote client, etc. MultipleFuncsWithOneHotkey Start different funcs by hitting one hotkey different times Link to comment Share on other sites More sharing options...
xcal Posted January 26, 2007 Share Posted January 26, 2007 (edited) Nevermind, found it. Edited January 26, 2007 by xcal How To Ask Questions The Smart Way Link to comment Share on other sites More sharing options...
thor918 Posted April 20, 2007 Share Posted April 20, 2007 Systray.au3 is gone from my include folder. I'm using beta version of newest autoit Link to comment Share on other sites More sharing options...
Xenobiologist Posted April 20, 2007 Share Posted April 20, 2007 Systray.au3 is gone from my include folder.I'm using beta version of newest autoitHI,so you need to download it again? So long,Mega Scripts & functions Organize Includes Let Scite organize the include files Yahtzee The game "Yahtzee" (Kniffel, DiceLion) LoginWrapper Secure scripts by adding a query (authentication) _RunOnlyOnThis UDF Make sure that a script can only be executed on ... (Windows / HD / ...) Internet-Café Server/Client Application Open CD, Start Browser, Lock remote client, etc. MultipleFuncsWithOneHotkey Start different funcs by hitting one hotkey different times Link to comment Share on other sites More sharing options...
thor918 Posted April 20, 2007 Share Posted April 20, 2007 (edited) okey. I could do that. what I meant was in my setup this file is gone. have it been removed in later autoit's or is it just my setup that is screwy? and by what you posted as the last comment, I guess my setup is absolete. thanks Edited April 20, 2007 by thor918 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now