Hier hab ich noch ein kleines Programm von mir "wiedergefunden" (obwohl ich es ja ständig am Laufen habe ... ) das die SysTray-Icons, entweder nach Prozess oder Titel, auf- oder absteigend, sortiert, damit da ein wenig mehr Ordnung in der Ecke herrscht
Spoiler anzeigen
#include <SysTray_UDF.au3>
#include <Array.au3>
#NoTrayIcon
[/autoit] [autoit][/autoit] [autoit]local $proc = True
local $up = 0
ProcessSetPriority(@ScriptName, 0)
[/autoit] [autoit][/autoit] [autoit]If $CmdLine[0] = 0 Then
MsgBox(64,"SysTraySort V1.2", _
@CR & "SysTraySort, 2007 by Thorsten Willert" & _
@CR & "USAGE: [/PROC] [/TITLE] [/UP] [/DOWN]" & _
@CR & "/PROC:" & @TAB & "Sort by process name" & _
@CR & "/TITLE:" & @TAB & "Sort by title" & _
@CR & "/UP:" & @TAB & "Ascending" & _
@CR & "/DOWN:" & @TAB & "Descending")
Exit
EndIf
For $i = 1 to $CmdLine[0]
If StringUpper($CmdLine[$i]) = "/PROC" Then
$proc = True
ElseIf StringUpper($CmdLine[$i]) = "/TITLE" Then
$proc = False
ElseIf StringUpper($CmdLine[$i]) = "/UP" Then
$up = 0
ElseIf StringUpper($CmdLine[$i]) = "/DOWN" Then
$up = 1
EndIf
Next
global $iTitles = _SysTrayIconTitles()
[/autoit] [autoit][/autoit] [autoit]If Not IsArray($iTitles) Then Exit
[/autoit] [autoit][/autoit] [autoit]global $iProcesses = _SysTrayIconProcesses()
[/autoit] [autoit][/autoit] [autoit]If Not IsArray($iProcesses) Then Exit
[/autoit] [autoit][/autoit] [autoit]If $proc Then
ByProcess($up)
Else
ByTitle($up)
EndIf
Exit
[/autoit] [autoit][/autoit] [autoit];########################################################################
Func ByProcess($s)
_ArraySort($iProcesses,$s)
[/autoit] [autoit][/autoit] [autoit]For $i=0 to Ubound($iProcesses)-1
sleep(1000)
$pos = _SysTrayIconIndex($iProcesses[$i], 0)
If $pos <> $i Then _SysTrayIconMove($pos, $i)
Next
EndFunc
[/autoit] [autoit][/autoit] [autoit];########################################################################
Func ByTitle($s)
_ArraySort($iTitles,$s)
[/autoit] [autoit][/autoit] [autoit]For $i=0 to Ubound($iTitles)-1
sleep(1000)
$pos = _SysTrayIconIndex($iTitles[$i], 1)
If $pos <> $i Then _SysTrayIconMove($pos, $i)
Next
EndFunc
[/autoit]Das ganze einfach über den Taskplaner laufen lassen z.B.:
http://thorsten-willert.de/Themen/Softwar…ySort/index.php
Benötigt noch die Systray.au3:
SysTrayUDF
oder gleich die exe von meiner Homepage nehmen.
Viel Spaß damit!
Grüße
Stilgar