Statistics.cs
This example demonstrates how to use PacketX to collect statistics from C#.
- See also:
- PacketX , Statistics , Adapter
using System;
using PacketXLib;
namespace Statistics
{
class Test
{
[MTAThread]
static void Main(string[] args)
{
PacketXClass oPktX = new PacketXClass();
oPktX.OnStatistics += new _IPktXPacketXEvents_OnStatisticsEventHandler(PacketX_OnStatistics);
AdapterCollection oAdapters = (AdapterCollection)oPktX.Adapters;
for (int i = 0; i < oAdapters.Count ; i++)
{
if (Convert.ToBoolean(oAdapters[i+1].IsGood))
Console.WriteLine("(" + (i+1) + ") " + oAdapters[i+1].Description);
}
oPktX.Adapter = null;
while (oPktX.Adapter == null)
{
Console.Write("Choose adapter#");
try
{
int nSelected = Convert.ToInt16(Console.ReadLine().Trim(),10);
oPktX.Adapter = oAdapters[nSelected];
}
catch (System.Exception)
{
Console.WriteLine("Invalid adapter number.");
}
}
Adapter oAdapter = (Adapter)oPktX.Adapter;
oAdapter.Mode = PacketXLib.PktXMode.PktXModeStatistics;
oAdapter.ReadTimeout = 2000;
oPktX.Start();
System.Threading.Thread.Sleep(60000);
oPktX.Stop();
}
static void PacketX_OnStatistics(PacketXLib.Statistics aStats)
{
Console.WriteLine(aStats.Date + " Pkts " + aStats.Packets + " Bytes " + aStats.Bytes);
}
}
}