eflfe / pingometer Goto Github PK
View Code? Open in Web Editor NEWPingoMeter - is a small portable program that show your ping in Windows system tray
License: MIT License
PingoMeter - is a small portable program that show your ping in Windows system tray
License: MIT License
Hi,
I love the little tool. Have it installed on the PCs of my sons, so they know whether our internet connection is suffering from latency problems or it is just the Fortnite and League of Legends game servers.
It would be nice to have it start when the PC starts
I've noticed an issue in which tray icons start turning invisible after running PingoMeter for a few hours (configuration below).
I can still interact with them (hover, left and right click), but the icon remains invisible. This continues even after closing PingoMeter and has only ever happened when PingoMeter was running (which also seems to be the first icon to turn invisible). Icons reappear after a reboot.
Here is my config.txt:
# PingoMeter config file
Delay 1000
MaxPing 100
BgColor 0:0:0
GoodColor 120:180:0
NormalColor 255:180:0
BadColor 255:0:0
RunOnStartup False
TheIPAddress 192.168.1.1
AlarmConnectionLost True
AlarmTimeOut True
AlarmResumed True
UseNumbers False
SFXConnectionLost C:\Windows\Media\Windows Pop-up Blocked.wav
SFXTimeOut (none)
SFXResumed (none)
I was able to observe this behavior on two seperate machines running the same environment (Windows 10, version 20H2).
It would be great if the resources could be integrated into the .exe
file. I put PingoMeter into my huge "Tools" folders, but I'm fairly certainly certain I'll forget what the "Resources" subfolder is about at one point.
Hello, I would like to suggest giving an option to see numbers for the ping instead of a graph.
Wherein:
If ping is good:
If ping is normal:
If ping is bad:
The number that will show is based on the average ping per minute.
That way, user can easily get an idea if their ping gets high as graph is less noticeable and the current notification settings only applies when your internet connection get lost but not when there's an internet speed degradation.
This is highly useful for VPNs wherein the pings can change anytime due to VPN server performance varies per hour.
Note: On VPN, internet speed degradation mean High Ping & Lower Bandwidth.
Sample Image: (Based on Temperature Monitor App for Windows)
Hey there, very nice program helped a lot ! thank you !
Everything is in title if there is a way to add "Open automatically after you log into the computer" button could be great !
that's it, thanks.
Please use ffmpeg or something instead
Here is the exception text:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.InvalidOperationException: Sound API only supports playing PCM wave files.
at System.Media.SoundPlayer.ValidateSoundFile(String fileName)
at System.Media.SoundPlayer.LoadAndPlay(Int32 flags)
at System.Media.SoundPlayer.Play()
at PingoMeter.Setting.SetSoundInfoForButtom(Button button, String pathToFile) in C:\Users\EFLFE\Documents\code\PingoMeter\Setting.cs:line 126
at PingoMeter.Setting.SelectWAV(Object senderAsButton, EventArgs e) in C:\Users\EFLFE\Documents\code\PingoMeter\Setting.cs:line 150
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4360.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
PingoMeter
Assembly Version: 0.9.9.0
Win32 Version: 0.9.9.0
CodeBase: file:///C:/PingoMeter/PingoMeter.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4341.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
![XoRphilic](https://user-images.githubusercontent.com/72063181/123538287-cb6a5b80-d751-11eb-9db9-7de89df7c645.png)
System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4360.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4360.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
Interop.Shell32
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/PingoMeter/Interop.Shell32.DLL
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
This is my network setup as seen from tracert
:
>tracert 8.8.8.8
Tracing route to 8.8.8.8 over a maximum of 30 hops
1 1 ms <1 ms <1 ms 10.0.0.6
2 4 ms 2 ms 2 ms 10.0.0.1
3 10 ms 10 ms 9 ms xxx
4 11 ms 11 ms 11 ms xxx
5 21 ms 21 ms 19 ms xxx
6 20 ms 20 ms 20 ms xxx
7 21 ms 22 ms 20 ms 172.253.64.119
8 20 ms 20 ms 19 ms 8.8.8.8
So I have three PingoMeters running for 10.0.0.6
, 10.0.0.1
, and 8.8.8.8
, where for first one is shown as "Ping: none" intermittently.
Could it be that the 10.0.0.6
one is too fast and is shown as "Ping: none" incorrectly? I am referring to this piece of code:
PingoMeter/NotificationIcon.cs
Lines 172 to 174 in 5bdee3b
PingoMeter/NotificationIcon.cs
Lines 83 to 94 in 5bdee3b
It seems to me like value == 0L
is not necessarily an exception.
Likely permissions, depending on where app is running from. Suggest to consider having app try to store settings in user profile, is reasonably easily done, supported by .net, AFAIK.
Simple log to csv, json or similar. Think a csv table would be most easily useful, pasteable into any spreadsheet app.
I'd like to set audio alarms instead of the taskbar notifications.
Thanks for this nice program. 👍
Cheers!
Hi, It would be great if users can custom maximum limit from number mode. So, the ping will be shown as more than 99 based on user setting the limit.
Sorry if my English is not good. Thankyou.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.