-
AutoIt
(
http://forum.oszone.net/forumdisplay.php?f=103)
Проблема с треем (иконка и менюшка)
Я никак не могу понять, как можно сделать чтобы в скрипте шел какой-нибудь процесс и в то же время можно было работать с треем и иконками в трее?
Например у меня имеется вот такой скрипт:
(записывает в лог-файл все изменения ip адреса)
Код:
#include <Inet.au3>
While 1
$1=FileExists("iplog.txt")
If $1 = 0 Then
FileWrite(@ScriptDir & "\iplog.txt", " Время Дата Ip-адресс")
EndIf
$PublicIP = _GetIP()
$line = FileReadLine('iplog.txt', -1)
$line2 = StringTrimLeft($line,24)
If $PublicIP <> -1 Then
If $PublicIP <> $line2 Then
FileWrite(@ScriptDir & "\iplog.txt", @CRLF & @HOUR & ":" & @MIN & ":" & @SEC & " "&@MDAY&"."&@MON&"."&@YEAR&" " & $PublicIP)
TrayTip ("IpLog",$PublicIP,"", 1)
EndIf
EndIf
Sleep(1000*20)
WEnd
Я хочу, чтобы при отсутствии интернета (отсутствии ip адресса), в трее иконка процесса была одна, а при наличии интернета другая.
Как мне в мой скрипт встроить вот такой код:
Код:
#Include <Constants.au3>
#NoTrayIcon
Opt("TrayMenuMode",1)
$exititem = TrayCreateItem("Exit")
TraySetState()
$start = 0
While 1
$msg = TrayGetMsg()
If $msg = $exititem Then ExitLoop
TraySetIcon("Shell32.dll")
WEnd
Exit
|
sashadeg,
Есть интернет - одна иконка, нет - другая: WinAPIEx
|
madmasles, ты наверно не увидел:
Цитата:
Цитата sashadeg
Как мне в мой скрипт встроить вот такой код: »
|
|
Цитата:
Цитата sashadeg
Как мне в мой скрипт встроить вот такой код »
|
Код:
#NoTrayIcon
#include <Inet.au3>
#Include <Constants.au3>
Opt("TrayMenuMode", 1)
Opt("TrayOnEventMode", 1)
$nExitItem = TrayCreateItem("Exit")
TrayItemSetOnEvent($nExitItem, "_Exit_Proc")
TraySetIcon("Shell32.dll", 9)
TraySetState()
While 1
If Not FileExists("iplog.txt") Then
FileWrite(@ScriptDir & "\iplog.txt", " Время Дата Ip-адресс")
EndIf
$PublicIP = _GetIP()
If $PublicIP <> -1 Then
TraySetIcon("Shell32.dll", 9) ;Одна иконка
$sLine = StringTrimLeft(FileReadLine('iplog.txt', -1), 24)
If $PublicIP <> $sLine Then
FileWrite(@ScriptDir & "\iplog.txt", @CRLF & @HOUR & ":" & @MIN & ":" & @SEC & " " & @MDAY&"."&@MON&"."&@YEAR & " " & $PublicIP)
TrayTip("IpLog", $PublicIP, "", 1)
EndIf
Else
TraySetIcon("Shell32.dll", 10) ;Другая иконка
EndIf
Sleep(1000*20)
WEnd
Func _Exit_Proc()
Exit
EndFunc
|
Цитата:
Цитата Creat0R
If Not FileExists("iplog.txt") Then »
|
зачем нужно NOT ? Что он делает?
|
Цитата:
Цитата sashadeg
зачем нужно NOT ? Что он делает? »
|
Если нет файла iplog.txt, то он создается следующей строкой кода.
|
Спасибо. В общем то тоже самое что и у меня =) Чтото не въехал сразу... =\
|
Время: 16:28.
© OSzone.net 2001-