Netstat Example






3.65/5 (10 votes)
Feb 17, 2003
1 min read

168074

2839
Sample classes to gather network statics for several protocols.
Introduction
I have seen alot of requests on how to implement network statistics in .NET applications lately, however, I have not been able to find any .NET classes that do this.
I decided to write a simple VB.NET example on how to implement this with the help of the IP Helper API's. I am fairly new to .NET so the code approach might not be 100% 'politically correct' at all times, but I have tried to keep this as much .NET as I could. If you see something awful, please disregard it.
Using the Code
The NetStat
class is the parent class because the class has several sub-classes:
IP
, UDP
, TCP
and ICMP
. These classes contain properties which hold network
statistics. You have to update these properties with the Class.Update method.
This method takes an optional parameter in the IP
and TCP
classes. If set to True
this will update information which is not likely to change. The default is False
.
Also, if anything went wrong in the Update method, the return value is 0, so it's
non-zero on success (It returns the size of structure). You get the error message by retrieving the .LastError
property.
I have included a sample project with it, so you will get the picture pretty fast.
It can look something like this;
Dim clsUDP As New NetStat.IP
If clsUDP.Update() <> 0 Then
' Success, get properties
MsgBox("Datagrams received: " & clsUDP.InDatagrams.ToString)
Else
' Error, Call LastError
Msgbox "An error occured; " & clsUDP.LastError
End If
If you find a bug or if you think there is something wrong with the code please mail me about it! Finally; Tips, comments and/or suggestions would be deeply appreciated! Thank you.