Skip to content

Latest commit

 

History

History
38 lines (26 loc) · 5.23 KB

File metadata and controls

38 lines (26 loc) · 5.23 KB

NetTrayMonitor (Монитор интернет-трафика)

Версия: 1.2.3
Разработчик: Павел Шадрин (ShadrinPavel)
Лицензия: MIT License (Распространяется бесплатно, «Как есть»)
ОС: Windows 10 / 11 (x64)

Описание проекта

NetTrayMonitor — это ультимативно легковесная, 100% портабельная утилита для мониторинга скорости входящего и исходящего интернет-трафика. Программа выводит данные в реальном времени поверх Панели задач Windows, обеспечивая идеальную интеграцию с системным интерфейсом.

Проект создавался с упором на нулевое потребление ресурсов и абсолютную независимость от системного реестра.

Ключевые возможности и архитектура

  • Абсолютная портативность (Portable): Не использует реестр для сохранения параметров и не оставляет следов в папках %APPDATA% или %LOCALAPPDATA%.
  • Нулевая нагрузка: Написана на чистом C++ с использованием нативного Win32 API. Не требует .NET Framework, VCRedist или других зависимостей.
  • Динамический 10px-барьер: Автоматически сдвигает область системного трея (TrayNotifyWnd / ReBarWindow32), выдерживая строгий отступ в 10 пикселей от левого края монитора. Корректно реагирует на изменение высоты панели задач (1 строка / 2 строки) и ширины текста.
  • Безопасное завершение (SEH-перехватчик): Внедрен глобальный фильтр необработанных исключений (SetUnhandledExceptionFilter). При любом аппаратном или программном сбое виджет мгновенно самоликвидируется, восстанавливает заводские границы панели задач и не оставляет «фантомных иконок» или диалоговых окон с ошибками.
  • Независимый рендер: Иконки запущенных программ никогда не перекрывают текст. Вывод данных осуществляется через прозрачное слоистое окно поверх всех окон (WS_EX_LAYERED | WS_EX_TOPMOST).

Системные требования

  • Операционная система: Windows 10 Pro 22H2 или новее.
  • Права администратора: Не требуются для запуска портативной версии.

Note

Архитектурная спецификация: Утилита работает без прав Администратора (Portable-режим) и считывает аппаратные счётчики активного сетевого адаптера на канальном уровне (L2). Это означает, что отображаемая скорость включает в себя весь трафик интерфейса (как внешний Интернет, так и локальный трафик от LAN-устройств, например, ONVIF-камер или NAS). Разделение трафика программным путём без прав Администратора в ОС Windows невозможно из соображений безопасности.

История версий

  • v1.2.3 — Обновление спецификаций проекта. Добавлено техническое обоснование L2-мониторинга (учёт локального LAN-трафика) при работе в режиме без UAC.
  • v1.2.2 — Исправлен баг Windows с проваливанием иконок (word-wrap ReBarWindow32). Добавлено контекстное меню (ПКМ). Переход на нативную архитектуру x64 (WinPE 11 совместимость).
  • v1.2.1 — Внедрена кастомная мультиразмерная иконка (256x256). Подтверждена и зафиксирована 100% совместимость со всеми разрядностями (Win32/x86/WOW64) начиная с Windows 7.
  • v1.2.0 — Финализация архитектуры. Полное документирование кодовой базы, переход на Open Source.
  • v1.1.0 — Внедрен алгоритм динамического пересчета 10px-барьера при смене высоты панели задач.
  • v1.0.0 — Релиз базового функционала, внедрение SEH-перехватчика крашей.