README.md

Windows ServiceDesk Widget

Приложение-виджет для Windows в трее, которое помогает управлять состоянием устройства и связываться со службой поддержки. Приложение работает в фоновом режиме, отслеживая ключевые параметры системы и предоставляя уведомления при необходимости.

Функциональность

Контроль состояния батареи

  • Периодически проверяет количество циклов заряда аккумулятора
  • Если значение превышает 6 циклов, отображается предупреждение: > “Ваше устройство превысило рекомендуемое количество циклов зарядки, что может негативно сказаться на емкости аккумулятора и сроке службы устройства. Рекомендуем обратиться в отдел Технической Поддержки”
  • При нажатии на “Открыть FS” в контекстном меню генерируется подробный отчет о батарее с помощью powercfg /batteryreport

Контроль свободного места на диске

  • Мониторит уровень свободного места на диске C:
  • При падении ниже 15% отображается предупреждение: > “Осталось свободного места: X%. Освободите место на диске!”
  • Рекомендуется освободить место для предотвращения проблем с производительностью системы

Контроль использования оперативной памяти

  • Отслеживает загрузку оперативной памяти
  • При превышении 70% отображается предупреждение: > “Оперативная память вашего устройства почти исчерпана. Это может привести к замедлению работы приложений, ошибкам или сбоям системы. Рекомендуется закрыть неиспользуемые программы или перезагрузить устройство для освобождения памяти”

Периодический перезапуск

  • Каждые 8 часов (28800 секунд) напоминает пользователю перезапустить компьютер
  • Перезапуск помогает освободить оперативную память и вернуть систему к нормальному состоянию
  • Предотвращает накопление проблем с производительностью

Связь со службой поддержки

  • Прямая кнопка для отправки письма в службу поддержки: servicedesk@example.org
  • Быстрый доступ к созданию обращения через почтовый клиент

Требования

  • Windows
  • C# NET.9.0
  • WPF

Использование

Запуск

Приложение автоматически запускается при старте Windows (если добавлено в автозагрузку) или вручную через ярлык на рабочем столе или в меню “Пуск”.

Контекстное меню

Щелкните правой кнопкой мыши по значку приложения в системном трее:

  • Написать в ServiceDesk — открыть почтовый клиент с адресом получателя servicedesk@example.org
  • Открыть FS — сгенерировать отчет о батарее и проверить количество циклов заряда
  • Выход — закрыть приложение

Визуальное уведомление

При обнаружении проблем приложение показывает всплывающее окно с предупреждением. Значок в трее остается статичным (без индикаторов состояния в текущей версии).

Основные компоненты

vac/
├── App.xaml                  # Точка входа в приложение
├── App.xaml.cs               # Код инициализации приложения
├── MainWindow.xaml           # Главное окно (скрыто, используется только для инициализации)
├── MainWindow.xaml.cs        # Основная логика: создание NotifyIcon, таймеры, проверки
├── app.ico                   # Иконка приложения в трее
├── battery-report.html       # Шаблон отчета о батарее (генерируется powercfg)
└── createReport.bat          # Скрипт для ручной генерации отчета

Используемые технологии

  • WPF — фреймворк для интерфейса
  • NotifyIcon (System.Windows.Forms) — индикатор в трее
  • ManagementObjectSearcher — доступ к WMI для получения информации о системе
  • HtmlAgilityPack — парсинг HTML-отчета о батарее
  • DriveInfo — информация о дисковом пространстве
  • Process — запуск внешних команд (powercfg, mailto)
Описание
Конвейеры
0 успешных
0 с ошибкой
Разработчики