如何计算计算机下载的金额?

时间:2009-10-20 10:18:34

标签: .net windows download

我目前正在研究.NET Cyber​​cafe管理程序,并希望计算Cyber​​cafe中每台计算机从Internet下载的数据量,因为用户必须支付下载金额。

我相信在Windows中必须有某种API来给我这个。 我应该在哪里看?

谢谢大家。

3 个答案:

答案 0 :(得分:2)

我刚刚找到System.Net.NetworkInformation命名空间并编写了以下代码:

NetworkInterface[] networkInterfaces = 
    NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface ni in networkInterfaces)
{
    IPv4InterfaceStatistics stats = ni.GetIPv4Statistics();
    IPInterfaceProperties props = ni.GetIPProperties();
    Console.WriteLine("{0} ({1:#,##0.00}Mb/s, {2})",
        ni.Name, ni.Speed / 1024D / 1024D, ni.OperationalStatus);
    Console.WriteLine("\t{0}", ni.Description);

    Console.WriteLine("\t{0:#,##0.00}Mb sent, {1:#,##0.00}Mb received",
        stats.BytesSent / 1024D / 1024D, stats.BytesReceived / 1024D / 1024D);
    Console.WriteLine();
}

我得到了这个输出:

Local Area Connection 2 (953,67Mb/s, Up)
        Realtek RTL8169/8110 Family PCI Gigabit Ethernet NIC (NDIS 6.0)
        1.906,92Mb sent, 483,77Mb received

Local Area Connection 3 (9,54Mb/s, Down)
        D-Link DFE-520TX PCI Fast Ethernet Adapter
        0,00Mb sent, 0,00Mb received

Loopback Pseudo-Interface 1 (1.024,00Mb/s, Up)
        Software Loopback Interface 1
        0,00Mb sent, 0,00Mb received

HTH

答案 1 :(得分:1)

我会使用一些专用的解决方案。谷歌的“网吧管理软件” - 有大量的结果:

例如:www.handycafe.com /

答案 2 :(得分:1)

您还可以阅读系统上的性能计数器。请参阅.NET中的PerformanceCounter类。有关计算机上可用性能计数器的列表。开始 - >运行Perfmon - > “添加计数器”以查看可用的计数器。