TRiCAM Posted December 24, 2013 Share Posted December 24, 2013 (edited) I was searching the internet and the forums for an autoit based keep alive script for my internet as well as a way to have a small notification about it in the system tray. I couldn't find any so I went ahead and threw this together. if anyone has any suggestions or comments i would love to hear them! It works for me and i will include a link to a pre-compiled version if you want it: thttp://tricamtech.com/script/NetStatus.exe the ICO files are in that directory too. expandcollapse popup#Region #AutoIt3Wrapper_Icon=..\..\..\NetStatus\connected.ico #AutoIt3Wrapper_Outfile=NetStatus.exe #AutoIt3Wrapper_UseUpx=n #AutoIt3Wrapper_Res_Comment=Pings Google Public DNS 8.8.8.8 #AutoIt3Wrapper_Res_Description=Internet Ping Monitor #AutoIt3Wrapper_Res_Fileversion=1.0 #AutoIt3Wrapper_Res_LegalCopyright=TRiCAM Tech Solutions #AutoIt3Wrapper_Res_Language=1033 #AutoIt3Wrapper_Res_requestedExecutionLevel=asInvoker #AutoIt3Wrapper_Res_Icon_Add=C:\NetStatus\connected.ico #AutoIt3Wrapper_Res_Icon_Add=C:\NetStatus\disconnected.ico #EndRegion Opt("TrayMenuMode", 3) ; The default tray menu items will not be shown and items are not checked when selected. These are options 1 and 2 for TrayMenuMode. TraySetIcon(@ScriptFullPath, -6) ; Set the tray menu icon using the shell32.dll and the random index number. sleep(3000) ;allow network to start up before running if on startup status() Func status() Local $iExit = TrayCreateItem("Exit") TraySetState(1) ; Show the tray menu. Local $hTimer = TimerInit() ; Begin the timer and store the handle in a variable. Local $iDiff = 0, $iIndex = 0 Local $iPing1 = Ping("8.8.8.8", 1500) ;Run first time! If $iPing1 Then ; icon('1', $iPing1) Else icon('0', $iPing1) EndIf While 1 $iDiff = TimerDiff($hTimer) ; Find the difference in time from the previous call of TimerInit Local $iPing = Ping("8.8.8.8", 1500) If $iDiff > 5000 Then ; If the difference is greater than 5 seconds then change the tray menu icon. If $iPing Then ; icon('1', $iPing) Else ;MsgBox(1, "", "You are Offline! Investigate!", 3000) If you want a notification. icon('0', $iPing) EndIf $hTimer = TimerInit() ; Reset the timer. EndIf Switch TrayGetMsg() Case $iExit ; Exit the loop. ExitLoop EndSwitch WEnd EndFunc Func icon($response, $pingtime) If $response = 1 Then TraySetToolTip("Connected - Time: " & $pingtime &"ms") TraySetIcon(@ScriptFullPath, -5) ; TraySetIcon("C:\Status\connected.ico") for use before compile ElseIf $response = 0 Then TraySetToolTip("Disconnected - Error: " & $pingtime) TraySetIcon(@ScriptFullPath, -6) ;TraySetIcon("C:\Status\disconnected.ico") for use before compile EndIf EndFunc Thanks guys! TRiCAM Edited December 24, 2013 by TRiCAM 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