ConsoleTraffic

Провайдера предоставляет определенное количество интернет-трафика за абон плату, при превышении предоставленного лимита нужно платить дополнительные бабки, и не всем это нравится (точнее говоря никому это не нравится). Для того чтоб избежать превышения лимита создают дополнительное программное обеспечение которое при истечению лимита будет выдавать предупредительные сообщения или отключать интернет.

ConsoleTraffic


Приступим!

1. Как всегда запуск нашей любимой IDE VS ;)
2. Создадим консольное приложение.
3. Подключим System.Diagnostics в котором предусмотрены классы, позволяющие осуществлять взаимодействие с системными процессами, журналами событий и счетчиками производительности.
4. Подключим System.Net.NetworkInformation обеспечивает доступ к данным о сетевом трафике, сетевым адресам и уведомлениям об изменении адресов локального компьютера.
5. Пишем следующий код:

    PerformanceCounterCategory PCC = new PerformanceCounterCategory("Network Interface");
    string str = PCC.GetInstanceNames()[0];
    PerformanceCounter PCS = new PerformanceCounter("Network Interface", "Bytes Sent/sec", str);
    PerformanceCounter PCR = new PerformanceCounter("Network Interface", "Bytes Received/sec", str);

    for (; ; )
    {
        Console.WriteLine("Sent: {0}k\tReceived: {1}k", 
                            PCS.NextValue() / 1024, 
                            PCR.NextValue() / 1024);
        Thread.Sleep(500);
        if (NetworkInterface.GetIsNetworkAvailable() == false)
        {
            Console.WriteLine("Internet disconnected");
            Console.WriteLine("Press any key to exit...");
            Console.ReadKey();
            break;
        }
    }


Что здесь сделано: объявил три экземпляра классов PCC, PCS и PCR они используются для получении информации о приеме и отдаче сетевого трафика, далее запустил бесконечный цикл который каждой секунды будет выводить информацию о том сколько трафика тратится и еще поставил проверку на подключения к интернету, когда интернет отключен программа нам об этом скажет. Вот что у вас должно получится

А теперь кто хочет, может самостоятельно попробовать доработать программу так чтоб она сперва спрашивала какой лимит трафика и по окончанию показывала статистику, в которой будет показано, сколько использовано трафика и сколько еще осталось. Ну или что та в этом роде. Надеюсь это вам будет не очень сложно, ну а если будете что та не понимать тогда пишите мне на почту или в комментариях с удовольствием отвечу на все что будет относится к данной теме.



Просмотров: 1687
22.05.2015, 20:19 -

Категория: Статьи » Программирование » C#

Коментарии к ConsoleTraffic: