AutoIt: 3.3.6.1
Версия: 05/13/2010
Категория: Сеть
Описание: Проверяет статус Мэйл Агента и ICQ. Может проверять один раз - по запросу, может проверять бесконечное количество раз, опционально ведя лог смены статусов Мэйл Агента и/или ICQ с опциональной выдачей сообщения о смене статуса в трее.
Проверяет только один ICQ и/или один Мэйл Агент.
Код:
Снимок:
История версий:
Источник: этот пост
Автор(ы): Makc
Версия: 05/13/2010
Категория: Сеть
Описание: Проверяет статус Мэйл Агента и ICQ. Может проверять один раз - по запросу, может проверять бесконечное количество раз, опционально ведя лог смены статусов Мэйл Агента и/или ICQ с опциональной выдачей сообщения о смене статуса в трее.
Проверяет только один ICQ и/или один Мэйл Агент.
Код:
Код:
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.3.6.1
Author: Makc
Date: 05/13/10
#ce ----------------------------------------------------------------------------
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Constants.au3>
#include <Date.au3>
Opt("TrayMenuMode", 3)
Global $sl_Invisible
Global $MRA, $ICQ
Global $StartTime, $Pause = True, $PauseTime = 0
Global $MRAStatus = "", $MRAStatusOld = ""
Global $ICQStatus = "", $ICQStatusOld = ""
Global $Invisible
Global $in_MRA_Old, $in_ICQ_Old
Global $MRAError = 0, $ICQError = 0
Global $Run = False, $Hide = False
Global $version = 1, $version_
Global $ini = "settings.ini"
Global $log = "log.txt"
Global $hImageList, $sOld_Opt_GRM = Opt("GUIResizeMode", $GUI_DOCKALL)
Global $iGUI_Height = 86
; Для выравнивания окна по центру
Global $_x = @DesktopWidth / 2, $_y = @DesktopHeight / 2
$Main = GUICreate("Status Viewer", 163, $iGUI_Height, $_x - 163/2, $_y - 86/2, -1, $WS_EX_TOOLWINDOW)
$gr_StatusViewer = GUICtrlCreateGroup("Status Viewer", 5, 0, 153, 65)
$lb_MRAInf = GUICtrlCreateLabel("", 35, 16, 84, 17)
$lb_ICQInf = GUICtrlCreateLabel("", 35, 40, 84, 17)
$bt_RefMRA = GUICtrlCreateButton("?", 131, 16, 19, 17, 0)
GUICtrlSetFont(-1, 7, 400, 0, "Small Fonts")
$bt_RefICQ = GUICtrlCreateButton("?", 131, 40, 19, 17, 0)
GUICtrlSetFont(-1, 7, 400, 0, "Small Fonts")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$bt_Tray = GUICtrlCreateButton("Tray", 19, 68, 26, 16)
GUICtrlSetFont(-1, 7, 400, 0, "Small Fonts")
$bt_Settings = GUICtrlCreateButton("Settings", 48, 68, 42, 16)
GUICtrlSetFont(-1, 7, 400, 0, "Small Fonts")
$bt_Pause = GUICtrlCreateButton("Pause", 93, 68, 34, 16)
GUICtrlSetFont(-1, 7, 400, 0, "Small Fonts")
$bt_Start = GUICtrlCreateButton("Start", 130, 68, 30, 16)
GUICtrlSetFont(-1, 7, 400, 0, "Small Fonts")
$lb_Time = GUICtrlCreateLabel("", 2, 70, 15, 10)
GUICtrlSetFont(-1, 7, 400, 0, "Small Fonts")
$gr_Settings = GUICtrlCreateGroup("Settings", 5, 88, 153, 153)
$lb_MRA = GUICtrlCreateLabel("MRA:", 11, 105, 31, 17)
$in_MRA = GUICtrlCreateInput("", 43, 104, 82, 17)
$cb_MRA = GUICtrlCreateCheckbox("", 131, 104, 17, 17)
$lb_ICQ = GUICtrlCreateLabel("ICQ:", 11, 128, 25, 17)
$in_ICQ = GUICtrlCreateInput("", 43, 128, 82, 17)
$cb_ICQ = GUICtrlCreateCheckbox("", 131, 128, 17, 17)
$lb_Check = GUICtrlCreateLabel("Check every", 11, 152, 64, 17)
$in_Check = GUICtrlCreateInput("", 78, 152, 25, 17)
$lb_Seconds = GUICtrlCreateLabel("seconds", 108, 152, 44, 17)
$cb_Log = GUICtrlCreateCheckbox("Log?", 11, 176, 65, 17)
$cb_Notice = GUICtrlCreateCheckbox("Notice?", 11, 192, 65, 17)
$lb_Transparency = GUICtrlCreateLabel("Transparency", 81, 176, 69, 17)
$sl_Invisible = GUICtrlCreateSlider(83, 188, 62, 21)
GUICtrlSetLimit(-1, 254, 0)
$bt_OpenLog = GUICtrlCreateButton("Open Log", 11, 216, 58, 17, 0)
$bt_Save = GUICtrlCreateButton("Save", 99, 216, 51, 17, 0)
GUICtrlCreateGroup("", -99, -99, 1, 1)
Opt("GUIResizeMode", $sOld_Opt_GRM)
If $cmdline[0] <> 0 Then
For $i = 1 To $cmdline[0]
Switch $cmdline[$i]
Case "-hide"
GUISetState(@SW_HIDE, $Main)
$Hide = True
Case "-mra"
GUICtrlSetState($cb_MRA, $GUI_CHECKED) ; Пометить чекбокс mra
If ($i+1) <= $cmdline[0] Then ; Если далее есть продолжение
If StringRegExp($cmdline[$i+1], '@(mail)?(list)?(bk)?(inbox)?\.ru') Then ; Если это e-mail
GUICtrlSetData($in_MRA, $cmdline[$i+1]) ; Установить его
GUICtrlSetData($lb_MRAInf, $cmdline[$i+1])
$i += 1
EndIf
EndIf
$Run = True
Case "-icq" ;
GUICtrlSetState($cb_ICQ, $GUI_CHECKED) ; Пометить чекбокс icq
If ($i+1) <= $cmdline[0] Then ; Если далее есть продолжение
If IsInt(Number($cmdline[$i+1])) Then ; Если это число
GUICtrlSetData($in_ICQ, $cmdline[$i+1]) ; Установить его
GUICtrlSetData($lb_ICQInf, $cmdline[$i+1])
$i += 1
EndIf
EndIf
$Run = True
Case "-notice"
If ($i+1) <= $cmdline[0] Then
If $cmdline[$i+1] = "on" Then GUICtrlSetState($cb_Notice, $GUI_CHECKED)
If $cmdline[$i+1] = "off" Then GUICtrlSetState($cb_Notice, $GUI_UNCHECKED)
$i +=1
EndIf
Case "-log"
If ($i+1) <= $cmdline[0] Then
If $cmdline[$i+1] = "on" Then GUICtrlSetState($cb_Log, $GUI_CHECKED)
If $cmdline[$i+1] = "off" Then GUICtrlSetState($cb_Log, $GUI_UNCHECKED)
$i +=1
EndIf
Case "-check"
If ($i+1) <= $cmdline[0] Then
If IsInt(Number($cmdline[$i+1])) Then GUICtrlSetData($in_Check, $cmdline[$i+1])
$i +=1
EndIf
Case "-standard"
_Load ()
Case "-run"
$Run = True
EndSwitch
Next
Else
ConsoleWrite("Доступные параметры командной строки:" & @CRLF & @CRLF)
ConsoleWrite(@TAB & "-hide" & @TAB & @TAB & "запускает программу в свернутом режиме")
ConsoleWrite(@TAB & "-icq [icq_id]"& @TAB & "ставит галочку у icq и если указан icq_id, вносит его в поле")
ConsoleWrite(@TAB & "-mra [mra_id]"& @TAB & "ставит галочку у mra и если указан mra_id, вносит его в поле")
ConsoleWrite(@TAB & "-check {number}"& @TAB & "частота проверки")
ConsoleWrite(@TAB & "-log {on|off}"& @TAB & "включить/выключить ведение лога")
ConsoleWrite(@TAB & "-notice {on|off}"& @TAB & "включить/выключить вывод сообщений")
_Load ()
EndIf
If Not $Hide Then GUISetState(@SW_SHOW)
$aboutitem = TrayCreateItem("About")
TrayCreateItem("")
$exititem = TrayCreateItem("Exit")
TraySetClick(16)
TraySetState()
While 1
$msg = TrayGetMsg()
Select
Case $msg = $aboutitem
_AboutGUI("About Info", "Status Viewer", "Program version: v" & @LF & $version, "Copyright © " & @YEAR & " Makc. " & @LF & "All rights reserved." , _
$Main, @AutoItExe, 0x0000FF, 0xFFFFFF, 200, 100, $_x - 200/2, $_y - 100/2)
Case $msg = $exititem
_Exit ()
Case $msg = $TRAY_EVENT_PRIMARYUP
_Focus ()
EndSelect
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
_Exit ()
Case $bt_Settings
_Toggle_ExpandControls_Proc($Main, $iGUI_Height, $iGUI_Height+153)
Case $bt_Save
_SaveAndLoad ()
Case $bt_Pause
if (not $Pause) then _Pause ()
Case $bt_RefMRA
_Run ("MRA", 0)
Case $bt_RefICQ
_Run ("ICQ", 0)
Case $bt_Start
_WhatToRun ()
Case $bt_Tray
GUISetState(@SW_HIDE, $Main)
Case $bt_OpenLog
_OpenLog ()
Case $sl_Invisible
_Invisible ()
EndSwitch
If $Run Then
_WhatToRun ()
$Run = False
EndIf
; Если цикл проверки запущен,
If ($Pause = False) Then
$SecElapsed = (TimerDiff($StartTime)- $PauseTime)/1000
; Если текущее время не равно уже показаному в GUI, то обновить время в GUI
If (GUICtrlRead($lb_Time) <> Round(GUICtrlRead($in_Check) - $SecElapsed)) Then GUICtrlSetData ($lb_Time, Round(GUICtrlRead($in_Check) - $SecElapsed))
; Если текущее время меньше либо равно тому, что указано в интервалах обновления - запустить обновление
If (($SecElapsed + 1) >= GUICtrlRead($in_Check)) Then _WhatToRun ()
EndIf
; Вывод в Lable вводимый в реальном времени текст из Input
If GUICtrlRead($in_MRA) <> $in_MRA_Old Then
GUICtrlSetData($lb_MRAInf, GUICtrlRead($in_MRA))
$in_MRA_Old = GUICtrlRead($in_MRA)
EndIf
If GUICtrlRead($in_ICQ) <> $in_ICQ_Old Then
GUICtrlSetData($lb_ICQInf, GUICtrlRead($in_ICQ))
$in_ICQ_Old = GUICtrlRead($in_ICQ)
EndIf
WEnd
; Вызворачивание окна
Func _Toggle_ExpandControls_Proc($hWnd, $iInitWndHeight, $iExpndHeight)
Local $iHeight, $sButtonText, $aSysCaptMetrics, $aSysBordMetrics
Local Const $SM_CYCAPTION = 4
Local Const $SM_CXFIXEDFRAME = 7
$aSysCaptMetrics = DllCall('user32.dll', 'int', 'GetSystemMetrics', 'int', $SM_CYCAPTION)
$aSysBordMetrics = DllCall('user32.dll', 'int', 'GetSystemMetrics', 'int', $SM_CXFIXEDFRAME)
$aGuiPos = WinGetPos($hWnd)
If $aGuiPos[3] > $iExpndHeight + $aSysCaptMetrics[0] Then
$iHeight = $iInitWndHeight + $aSysCaptMetrics[0] + ($aSysBordMetrics[0] * 2) - 4
Else
$iHeight = $iExpndHeight + $aSysCaptMetrics[0] + ($aSysBordMetrics[0] * 2)
EndIf
WinMove($hWnd, "", $aGuiPos[0], $aGuiPos[1], $aGuiPos[2], $iHeight)
; Нужно для того чтобы не бегали иконки при нажатии Настроек
GUICtrlSetPos ($MRA, 14, 16, 13, 13)
GUICtrlSetPos ($MRA, 13, 16, 13, 13)
GUICtrlSetPos ($ICQ, 13, 38, 16, 16)
GUICtrlSetPos ($ICQ, 12, 38, 16, 16)
EndFunc
Func _SaveAndLoad ()
_Save ()
_Load ()
EndFunc
Func _Load ()
If FileExists($ini) Then
GUICtrlSetData ($in_MRA, IniRead($ini, "Settings", "MRA", ""))
GUICtrlSetData ($lb_MRAInf, IniRead($ini, "Settings", "MRA", ""))
GUICtrlSetData ($in_ICQ, IniRead($ini, "Settings", "ICQ", ""))
GUICtrlSetData ($lb_ICQInf, IniRead($ini, "Settings", "ICQ", ""))
GUICtrlSetState ($cb_MRA, IniRead($ini, "Settings", "CheckMRA", $GUI_UNCHECKED))
GUICtrlSetState ($cb_ICQ, IniRead($ini, "Settings", "CheckICQ", $GUI_UNCHECKED))
GUICtrlSetData ($in_Check, IniRead($ini, "Settings", "Seconds", ""))
GUICtrlSetData ($sl_Invisible, IniRead($ini, "Settings", "Transparency", 0))
GUICtrlSetState ($cb_Log, IniRead($ini, "Settings", "Log", $GUI_UNCHECKED))
GUICtrlSetState ($cb_Notice, IniRead($ini, "Settings", "Notice", $GUI_UNCHECKED))
Else
_Toggle_ExpandControls_Proc($Main, $iGUI_Height, $iGUI_Height+153)
EndIf
EndFunc
Func _Save ()
IniWrite ($ini, "Settings", "MRA", GUICtrlRead($in_MRA))
IniWrite ($ini, "Settings", "ICQ", GUICtrlRead($in_ICQ))
IniWrite ($ini, "Settings", "Seconds", GUICtrlRead($in_Check))
IniWrite ($ini, "Settings", "CheckMRA", GUICtrlRead($cb_MRA))
IniWrite ($ini, "Settings", "CheckICQ", GUICtrlRead($cb_ICQ))
IniWrite ($ini, "Settings", "Seconds", GUICtrlRead($in_Check))
IniWrite ($ini, "Settings", "Transparency", GUICtrlRead($sl_Invisible))
IniWrite ($ini, "Settings", "Log", GUICtrlRead($cb_Log))
IniWrite ($ini, "Settings", "Notice", GUICtrlRead($cb_Notice))
EndFunc
Func _WhatToRun ()
If (GUICTRLRead($cb_MRA) = $GUI_CHECKED) And (GUICTRLRead($cb_ICQ) <> $GUI_CHECKED) Then
_Run ("MRA", 1)
Else
If (GUICTRLRead($cb_MRA) <> $GUI_CHECKED) And (GUICTRLRead($cb_ICQ) = $GUI_CHECKED) Then
_Run ("ICQ", 1)
Else
If (GUICTRLRead($cb_MRA) = $GUI_CHECKED) And (GUICTRLRead($cb_ICQ) = $GUI_CHECKED) Then
_Run ("MRA_ICQ", 1)
Else
MsgBox (16, "ERROR", "Select protocol")
EndIf
EndIf
EndIf
EndFunc
Func _Run ($name, $options)
If ($name = "MRA") or ($name = "MRA_ICQ") Then
Local $MRA_Old = $MRA
$MRAStatus = InetGet("http://status.mail.ru/?" & GUICtrlRead($lb_MRAInf), @TempDir & "\" & "MRA.gif")
; Этот If нужно только для того чтобы при прозрачности окно меньше мигало
If $MRAStatus <> $MRAStatusOld Then
$MRA = GUICtrlCreatePic (@TempDir & "\" & "MRA.gif", 13, 16, 13, 13)
_Invisible ()
GUICtrlDelete ($MRA_Old)
EndIf
EndIf
If ($name = "ICQ") or ($name = "MRA_ICQ") Then
Local $ICQ_Old = $ICQ
$ICQStatus = InetGet("http://status.icq.com/online.gif?icq=" & GUICtrlRead($lb_ICQInf) & "&img=27", @TempDir & "\" & "ICQ.gif")
; Аналогично
If $ICQStatus <> $ICQStatusOld Then
$ICQ = GUICtrlCreatePic (@TempDir & "\" & "ICQ.gif", 12, 38, 16, 16)
_Invisible ()
GUICtrlDelete ($ICQ_Old)
EndIf
EndIf
; Если проверка не одноразовая, а запущена через книпку Start
If $options = 1 Then
$Pause = False
$PauseTime = 0
$StartTime = TimerInit()
If GUICtrlRead($cb_Notice) = $GUI_CHECKED Then _Notice ()
If GUICtrlRead($cb_Log) = $GUI_CHECKED Then _Log ()
EndIf
EndFunc
; При нажатии паузы останавливаем проверку статусов и останавливаем отсчет времени
; при повторном нажатии на паузу или нажатии на старт - выходим из цикла while 1
; что возобновляет работу
Func _Pause ()
Local $PauseTime_ = TimerInit()
$Pause_Old = $Pause
$Pause = True
GUICtrlSetData($bt_Pause, "Resume")
GUICtrlSetPos($bt_Pause, 89, 68, 42, 16)
While 1
$msg = TrayGetMsg()
Select
Case $msg = $aboutitem
_AboutGUI("About Info", "Status Viewer" , "Program version: v" & @LF & $version, "Copyright © " & @YEAR & " Makc. " & @LF & "All rights reserved." , _
$Main, @AutoItExe, 0x0000FF, 0xFFFFFF, 200, 100)
Case $msg = $exititem
_Exit ()
Case $msg = $TRAY_EVENT_PRIMARYUP
_Focus ()
EndSelect
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
_Exit ()
Case $bt_Settings
_Toggle_ExpandControls_Proc($Main, $iGUI_Height, $iGUI_Height+153)
Case $bt_Save
_SaveAndLoad ()
Case $bt_Pause
GUICtrlSetPos($bt_Pause, 93, 68, 34, 16)
GUICtrlSetData($bt_Pause, "Pause")
ExitLoop
Case $bt_RefMRA
_Run ("MRA", 0)
Case $bt_RefICQ
_Run ("ICQ", 0)
Case $bt_Start
GUICtrlSetPos($bt_Pause, 93, 68, 34, 16)
GUICtrlSetData($bt_Pause, "Pause")
ExitLoop
Case $bt_Tray
GUISetState(@SW_HIDE, $Main)
Case $bt_OpenLog
_OpenLog ()
Case $sl_Invisible
_Invisible ()
EndSwitch
If GUICtrlRead($in_MRA) <> $in_MRA_Old Then
GUICtrlSetData($lb_MRAInf, GUICtrlRead($in_MRA))
$in_MRA_Old = GUICtrlRead($in_MRA)
EndIf
If GUICtrlRead($in_ICQ) <> $in_ICQ_Old Then
GUICtrlSetData($lb_ICQInf, GUICtrlRead($in_ICQ))
$in_ICQ_Old = GUICtrlRead($in_ICQ)
EndIf
WEnd
$Pause = $Pause_Old
$PauseTime = $PauseTime + TimerDiff($PauseTime_)
EndFunc
Func _CurTime()
Return @MDAY & "." & @MON & "." & @YEAR & " " & @HOUR & ":" & @MIN & ":" & @SEC
EndFunc
; Вывод сообщения в трее
Func _Notice ()
If (($MRAStatus <> $MRAStatusOld) and ((($MRAStatus <> 349) or ($MRAStatusOld <> 568)) and (($MRAStatus <> 568) or ($MRAStatusOld <> 349)))) Then
If GUICtrlRead($cb_Log) = $GUI_UNCHECKED Then $MRAStatusOld = $MRAStatus
If ($MRAStatus = 349) Or ($MRAStatus = 568) Then
TrayTip(GUICtrlRead($lb_MRAInf), "online", 2, 1)
Else
If $MRAStatus = 570 Then
TrayTip(GUICtrlRead($lb_MRAInf), "offline", 2, 1)
Else
TrayTip(GUICtrlRead($lb_MRAInf), "ERROR", 2, 3)
EndIf
EndIf
EndIf
If $ICQStatus <> $ICQStatusOld Then
If GUICtrlRead($cb_Log) <> $GUI_CHECKED Then $ICQStatusOld = $ICQStatus
If $ICQStatus = 1030 Then
TrayTip(GUICtrlRead($lb_ICQInf), "online", 2, 1)
Else
If $ICQStatus = 589 Then
TrayTip(GUICtrlRead($lb_ICQInf), "offline", 2, 1)
Else
If $ICQStatus = 360 Then
TrayTip(GUICtrlRead($lb_ICQInf), "unknown", 2, 1)
Else
TrayTip(GUICtrlRead($lb_ICQInf), "ERROR", 2, 3)
EndIf
EndIf
EndIf
EndIf
EndFunc
Func _Log ()
If (($MRAStatus <> $MRAStatusOld) and ((($MRAStatus <> 349) or ($MRAStatusOld <> 568)) and (($MRAStatus <> 568) or ($MRAStatusOld <> 349)))) Then
$MRAStatusOld = $MRAStatus
If ($MRAStatus = 349) Or ($MRAStatus = 568) Then
_WriteLog("MRA", GUICtrlRead($lb_MRAInf), "online")
Else
If $MRAStatus = 570 Then
_WriteLog("MRA", GUICtrlRead($lb_MRAInf), "offline")
Else
_WriteLog("MRA", GUICtrlRead($lb_MRAInf), "ERROR")
EndIf
EndIf
EndIf
If $ICQStatus <> $ICQStatusOld Then
$ICQStatusOld = $ICQStatus
If $ICQStatus = 1030 Then
_WriteLog("ICQ", GUICtrlRead($lb_ICQInf), "online")
Else
If $ICQStatus = 589 Then
_WriteLog("ICQ", GUICtrlRead($lb_ICQInf), "offline")
Else
If $ICQStatus = 360 Then
_WriteLog("ICQ", GUICtrlRead($lb_ICQInf), "unknown")
Else
_WriteLog("ICQ", GUICtrlRead($lb_ICQInf), "ERROR")
EndIf
EndIf
EndIf
EndIf
EndFunc
Func _WriteLog ($protocol, $uin, $status)
If Not FileExists($log) Then
$logOpen = FileOpen($log, 1)
FileWrite ($logOpen, "Time" & @TAB & @TAB & @TAB & "Protocol" & @TAB & @TAB & "ID" & @TAB & @TAB & @TAB & "Status" & @CRLF)
FileClose($logOpen)
EndIf
$logOpen = FileOpen($log, 1)
If StringLen($uin) < 8 Then
$tab = @TAB & @TAB & @TAB
Else
$tab = @TAB & @TAB
EndIf
FileWrite ($logOpen, @CRLF & "[" & _CurTime() & "] " & @TAB & $protocol & " " & @TAB & @TAB & $uin & $tab & $status)
FileClose($logOpen)
EndFunc
Func _OpenLog ()
If FileExists ($log) Then
Run ("notepad.exe " & $log)
Else
MsgBox (16,"Error","Log-file doesn't exist!")
EndIf
EndFunc
Func _Invisible ()
WinSetTrans("Status Viewer", "", GUICtrlRead($sl_Invisible) * (-1) + 255)
EndFunc
Func _Focus()
GUISetState(@SW_SHOW, $Main)
WinSetTrans("Status Viewer", "", 255)
GUICtrlSetData($sl_Invisible, 0)
WinActivate ("Status Viewer")
EndFunc
Func _Exit ()
If FileExists(@TempDir & "\" & "MRA.gif") Then FileDelete (@TempDir & "\" & "MRA.gif")
If FileExists(@TempDir & "\" & "ICQ.gif") Then FileDelete (@TempDir & "\" & "ICQ.gif")
Exit
EndFunc
Func _AboutGUI($Title, $MainLabel, $TextLabel, $CopyRLabel,$Parent=0, $IconFile="", $LinkColor=0x0000FF, $BkColor=0xFFFFFF, $Width=300, $Height=120, $Left=-1, $Top=-1, $Style=-1, $ExStyle=-1)
Local $OldEventOpt = Opt("GUIOnEventMode", 0)
Local $About_GUI, $LinkTop=120, $About_Msg, $CurInfo
WinSetState($Parent, "", @SW_DISABLE)
If $ExStyle = -1 Then $ExStyle = ""
$About_GUI = GUICreate($Title, $Width, $Height, $Left, $Top, $Style, 0x00000080+$ExStyle, $Parent)
GUISetBkColor($BkColor)
GUICtrlCreateLabel($MainLabel, 16, 15, $Width, 25, 1)
GUICtrlSetFont(-1, 14)
GUICtrlCreateIcon($IconFile, 0, 5, 10)
GUICtrlSetState(-1, 128)
GUICtrlCreateLabel("E-Mail: <deleted by author>", 0, $Height-50, $Width, -20, 1)
GUICtrlSetColor(-1, 0x8888888)
GUICtrlCreateLabel($CopyRLabel, 0, $Height-30, $Width, -20, 1)
GUICtrlSetColor(-1, 0x969696)
GUICtrlSetState(-1, 128)
GUISetState(@SW_SHOW, $About_GUI)
While 1
$About_Msg = GUIGetMsg()
Switch $About_Msg
Case -3
ExitLoop
EndSwitch
WEnd
WinSetState($Parent, "", @SW_ENABLE)
GUIDelete($About_GUI)
GUISwitch($Parent)
EndFunc
Снимок:
История версий:
19/12/12 *смотри пост внизу (датированый этой датой)
05/15/10 *третий релиз
04/17/10 *второй релиз
03/10/10 *первый релиз
05/15/10 *третий релиз
04/17/10 *второй релиз
03/10/10 *первый релиз
Источник: этот пост
Автор(ы): Makc