#NoTrayIcon

Opt("TrayMenuMode", 1 + 2) ; Не отображать в трее пункты меню по умолчанию (Script Paused/Exit) и не отмечать галочками при выборе.

Local $iExit = TrayCreateItem("Выход")

TraySetState(1) ; Показывает меню трея

Local $hTimer = TimerInit() ; Запускает таймер и хранит дескриптор в переменной
Local $iDiff = 0, $iIndex = 0

While 1
	$iDiff = TimerDiff($hTimer) ; Возвращает разницу времени от предыдущего вызова TimerInit
	If $iDiff > 1000 Then ; Если разница более 1 секунды, то изменяем иконку в трее

		$iIndex = -Random(0, 100, 1) ; Используйте отрицательное число, которое указывает порядковый номер.
		ToolTip(-$iIndex & " - Текущая иконка shell32.dll", @DesktopWidth - 250, @DesktopHeight - 70) ; Устанавливает подсказку  с информацией о номере иконки.
		TraySetIcon("shell32.dll", $iIndex) ; Устанавливает иконку в трее используя shell32.dll и случайное число от 1 до 100.
		$hTimer = TimerInit() ; Сбрасывает таймер.

	EndIf

	Switch TrayGetMsg()
		Case $iExit ; Выход
			ExitLoop
	EndSwitch
WEnd