Skip to content

Releases: aokazantsev/DevMonitor

DevMonitor 1.18

Choose a tag to compare

@aokazantsev aokazantsev released this 26 Oct 07:09
  • Счётчики статистики использования записываются через временный файл и подменяют прежний целиком: выход программы или выключение Windows во время записи больше не обнуляют накопленное за последние дни.
  • Пакет статистики, собранный до выключения статистики в настройках, больше не уходит после него, если его отправка ещё не началась, даже если статистику тут же включили снова; ответ сервера на такой пакет не помечает новые счётчики отправленными. Выключение удаляет и временный файл счётчиков.
  • Заметка установщика о прежней папке (переустановка в другую папку) точнее говорит, чем опасен запуск Uninstall.exe в ней: он сломает и новую установку.
  • Запуск больше не ждёт Планировщика заданий: признак автозапуска для статистики узнаётся в фоне.
  • Если справочник hardware.csv не найден, а settings.txt при открытии настроек не прочитался, «Сохранить» говорит, что железо не записано, потому что справочник не найден или пуст, и повторяет, что settings.txt не прочитался, вместо совета выбрать модели в пустых списках.

DevMonitor 1.17

Choose a tag to compare

@aokazantsev aokazantsev released this 25 Oct 12:05
  • Оборвавшаяся загрузка обновления (сбой сети или сервера, файл не удалось перенести на место) больше не оставляет в «Загрузках» недокачанный файл .part: он удаляется сразу.
  • Второй установщик, запущенный, пока идёт первый, после сообщения «Установка DevMonitor уже идёт.» завершается с кодом 1, а не 0, и пишет об этом строку в журнал установки, не трогая журнал идущей установки: запустивший его процесс видит, что установка не выполнена.

DevMonitor 1.16

Choose a tag to compare

@aokazantsev aokazantsev released this 25 Oct 10:23
  • Журнал установщика (%TEMP%\DevMonitor-setup.log) больше не стирается при повторной попытке установки: каждый запуск дописывается в конец, а журнал больше 512 КБ при следующем запуске переносится в DevMonitor-setup.old.log рядом с ним. В него теперь попадают и заметки из итога установки, и отказы окна установщика (папка не подходит, идёт удаление).
  • Если установка сорвалась после того, как установщик закрыл программу, окно ошибки говорит, что программа закрыта и не запущена снова, и подсказывает исправить причину и повторить установку.
  • Окно обновления, открытое снова, пока ещё идёт загрузка, больше не качает установщик в тот же файл одновременно с первой загрузкой: оно дожидается её и берёт готовый файл, если тот совпал с контрольной суммой на GitHub. Установщик той же версии, уже лежащий в «Загрузках», не скачивается заново, если совпал с контрольной суммой на GitHub. Сбой при загрузке называется «Не удалось скачать обновление», а не «Не удалось проверить обновление».
  • Удаление, после которого в папке программы остались файлы, которые ставил не установщик, считается успешным: файлы программы убраны, а итог называет оставленную папку и причину, вместо «Удаление закончено не полностью».

DevMonitor 1.15

Choose a tag to compare

@aokazantsev aokazantsev released this 25 Oct 08:10
  • Установка и удаление закрывают и копию программы, запущенную, пока шла остановка. Если копию закрыть нельзя (её запустил другой пользователь Windows), удаление сообщает «не закрылся» вместо падения, а установщик подсказывает закрыть её у того пользователя.
  • Пока идёт установка, установщик не даёт Windows завершить работу без вопроса: он появляется в списке программ, которые мешают выключению, и установка не обрывается на полпути.
  • Удаление убирает из папки данных и файлы и папки с атрибутом «только чтение», а не оставляет папку недоудалённой.
  • Установка в новую папку: если в прежней папке из «Приложений» нет программы, но остались другие файлы, установщик называет её в итоге установки, чтобы её можно было удалить вручную.
  • Окно установщика при первой установке открывается без запроса к Планировщику заданий: состояние автозапуска проверяется только при обновлении.
  • Неудачная проверка обновления (из меню и ежедневная) пишет в журнал вместо полного текста сетевой ошибки её вид и код ответа сервера: имя, адрес и порт прокси больше не попадают в журнал и в отчёт о сбое.
  • Журнал log.txt повторяет запись до 0,1 с, если файл на мгновение занят (антивирус, индексатор поиска), — строки теряются реже.

DevMonitor 1.14

Choose a tag to compare

@aokazantsev aokazantsev released this 25 Oct 07:04
  • Установщик: если запись в «Приложениях» осталась, а папку программы удалили вручную, установка считается новой — галочка «Запускать при входе в Windows» включена, как при первой установке. Раньше она повторяла прежнее состояние автозапуска.

DevMonitor 1.13

Choose a tag to compare

@aokazantsev aokazantsev released this 22 Oct 16:38
  • Программа раз в сутки сама проверяет, вышла ли новая версия, и сообщает о ней уведомлением; клик по уведомлению
    открывает окно обновления. Нет новой версии или проверка не удалась — ничего не показывается, строка уходит в журнал.
    Выключается галочкой «Раз в сутки проверять обновление» в настройках.
  • Анонимная статистика использования: раз в час, пока программа запущена, автору уходят счётчики за текущие и
    неотправленные прошлые сутки (до недели) — случайный номер установки, версии программы и Windows, сколько раз
    программа запускалась и сама находила новую версию, сколько раз использовались пункты меню, оверлей, статистика,
    настройки и обновление, и текущее состояние (включены ли автозапуск, проверка обновлений и отчёты о сбоях, есть ли
    права администратора, показан ли оверлей, выбрано ли железо вручную и есть ли оно в справочнике, читаются ли
    температура процессора и видеокарта). Имена, пути, модели железа, показатели и история не уходят. Галочка в
    установщике включена по умолчанию, выключить можно там же или в настройках программы. Подробнее — в README,
    «Статистика использования».

DevMonitor 1.12

Choose a tag to compare

@aokazantsev aokazantsev released this 17 Oct 08:46

Техническое обновление по итогам полной проверки кода.

  • «Проверить обновление…» кладёт установщик в отдельную папку DevMonitor-<версия> в «Загрузках» и сверяет его с
    контрольной суммой SHA-256 из релиза на GitHub: не совпал — файл удаляется. Кнопка «Установить сейчас» ещё раз
    сверяет файл и запускает установщик (если DevMonitor запущен без прав — через окно UAC); закрылся без установки —
    окно говорит об этом, и кнопку можно нажать снова. Проводник сам больше не открывается, «Открыть папку» и
    «Скопировать путь» остались.
  • Установщик и удаление трогают в папке программы только её файлы (подпапки lib и installer — целиком): чужие
    файлы рядом остаются, папка удаляется, только если опустела. Непустую папку, не похожую на папку установки,
    установщик не принимает; путь к папке нужен полный, для файла вместо папки и недоступного диска — отдельные
    сообщения. При переустановке в другую папку прежняя очищается от файлов программы. Установщик нельзя закрыть
    посреди установки, вторая его копия не запускается, а удаление не начинается, пока открыт установщик или уже идёт
    другое удаление. Журнал установки %TEMP%\DevMonitor-setup.log записывает причину неудачи и итог установки
    драйвера PawnIO.
  • Галочки установщика при обновлении берут текущее состояние: выключенный автозапуск остаётся выключенным, удалённый
    ярлык на рабочем столе не возвращается, а установщик драйвера PawnIO, от которого ты раньше отказался, сам больше не
    открывается. Снятая галочка ярлыка удаляет существующий ярлык, а не пересоздаёт его вопреки выбору. Если ярлык не
    удаётся создать или удалить (контролируемый доступ к папкам Защитника, атрибут «только чтение»), установка и
    удаление больше не обрываются: окно называет причину, остальные шаги выполняются. Ярлык, который не удалось пометить
    «Запуск от имени администратора», удаляется, а если не удалился — окно просит удалить его вручную.
  • Отменённое выключение или перезагрузка Windows (например, из-за несохранённого документа) больше не убирает значок
    DevMonitor из трея при работающем оверлее и не приводит к окну падения по правому клику.
  • Оверлей, меню трея и статистика больше не замирают на секунды во время сборок: программа работает с обычным
    приоритетом, а не пониженным, и опрос датчиков не ждёт, пока освободятся ядра, занятые Gradle и Kotlin.
  • Ноутбук с NVIDIA, проработавший весь сеанс от батареи, при следующем запуске больше не отключает видеокарту с ложным
    «прошлый запуск упал на шаге «запуск NVML»». Установка новой версии снимает отключение видеокарты, оставшееся от
    прежней. Если программа упала при чтении порогов температуры из драйвера NVIDIA, видеокарта отключается так же, как
    после падения её датчика: причина видна в меню трея, «Проверить датчики снова» включает видеокарту и заново читает
    пороги. Раньше пороги ноутбучной видеокарты отключались навсегда и молча. Окно настроек больше не пишет «драйвер не
    отдал пределы», когда пределы просто не читались, а журнал записывает, почему пороги не прочитаны. Без папки lib
    меню трея советует переустановить DevMonitor.
  • Журнал записывает выход программы с причиной (меню «Выход», завершение сеанса Windows) и запуск второй копии.
  • Настройки не подменяются стандартными. Если settings.txt занят другой программой, DevMonitor ждёт около 30 секунд
    (при нехватке прав на файл — не ждёт) и, не дождавшись, закрывается с сообщением, а не красит температуры по
    порогам железа, которое Windows видит в этом ПК. «Сбросить настройки» удаляет файлы после распаковки новой версии, а
    не до неё, и снимает с них атрибут «только чтение»; не удалось удалить settings.txt — установка прерывается с
    причиной, а position.txt — только заметка в окне. Если не удаётся записать выбор об отчётах о сбоях, установщик
    тоже называет причину. Окно настроек говорит, где на самом деле лежит settings.txt и почему его не удалось
    записать (причина попадает и в журнал), а «Сохранить» снимает с файла атрибут «только чтение».
  • Системные программы (schtasks, Блокнот, Проводник, cmd) запускаются по полному пути, а DLL, которые установщик и
    деинсталлятор подгружают после запуска, берутся только из системной папки Windows. Ссылки в «О приложении»
    открывают браузер без прав администратора. Зависшая команда Планировщика завершается через 15 секунд, а задача
    автозапуска удаляется, даже если проверка её наличия не ответила.
  • «Журнал» в трее больше не показывает окно падения, если Блокнот не открылся; «Скопировать путь» в окне обновления и
    ссылки в «О приложении» — если буфер обмена занят или браузер не открылся. Запуск DevMonitor.exe без прав, пока
    работает копия с правами (ярлык или автозапуск), больше не может закончиться окном падения: вторая копия просто
    закрывается.
  • Описание отчёта о сбое в установщике и README приведено к тому, что на самом деле пишется в журнал: время сбоя, имя
    пользователя и домена (у доменной учётки — домен, а не имя компьютера), пути к программе, её данным и скачанному
    обновлению, проверки, загрузки и запуск обновлений. Пример команды автозапуска с путём из папки автора из README
    убран.

DevMonitor 1.11

Choose a tag to compare

@aokazantsev aokazantsev released this 12 Oct 17:20
  • Установщик больше не падает, если любой запущенный Uninstall.exe закрылся ровно в тот момент, когда установщик
    проверял запущенные процессы. Раньше это давало ошибку «Ссылка на объект не указывает на экземпляр объекта»,
    и установку приходилось запускать заново.

DevMonitor 1.10

Choose a tag to compare

@aokazantsev aokazantsev released this 06 Oct 14:16

1.10 — 06.10.2026

  • Правый клик по плашке с показателями открывает то же меню, что и значок в трее.

1.9 — 06.10.2026

  • В меню трея пункт «Проверить обновление…»: программа сверяется с последним релизом на GitHub и, если
    есть версия новее, скачивает установщик в «Загрузки» и открывает его в Проводнике. Окно с путём и
    кнопкой «Открыть папку» остаётся, если Проводник не появился. Установщик ставит новую версию поверх
    текущей, настройки сохраняются.
  • В установщике галочка «Сбросить настройки» (по умолчанию выключена) — если сбой вызван настройками.

Скачай DevMonitorSetup.exe ниже и установи поверх прежней версии — настройки сохранятся. Полная история — CHANGELOG.md.

DevMonitor 1.8

Choose a tag to compare

@aokazantsev aokazantsev released this 06 Oct 14:04
  • Журнал log.txt (трей → «Журнал»): запуск, выбранное железо, как запустился каждый датчик и почему
    не запустился, медленные опросы, текст ошибки при падении. crash.log больше нет.
  • Сбой драйвера температуры CPU или nvml.dll, включая нарушение доступа к памяти, отключает только
    этот датчик, а не всю программу. Если программа всё же упала на запуске датчика, при следующем
    запуске он пропускается; причина — в меню трея, там же «Проверить датчики снова».
  • Сбой при чтении порогов NVIDIA больше не ломает выбор железа до перезапуска.
  • Меню трея больше не может зависнуть на проверке автозапуска.

Скачай DevMonitorSetup.exe ниже и установи поверх прежней версии — настройки сохранятся. Полная история — CHANGELOG.md.