Coder Social home page Coder Social logo

backupmachine's People

Contributors

wyfinger avatar

Stargazers

 avatar

Watchers

 avatar  avatar

backupmachine's Issues

Анализ работы RAR

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

Ожидание закрытия файла конфигурации и перезагрузка настроек

При открытии файла конфигурации из интерфейса программы нужно мониторить закрытие этого файла (просто дождаться завершения программы-редактора не подходит из-за MDI редакторов типа Notepad++) и перезагрузить настройки.

Иконка в трее

Нужно добавить интерактивности:

  1. Анимация во время работы архиватора;
  2. Зачеркнуть иконку при ошибках в момент запуска (когда запустить мониторинг не удалось).

Исключение дубликатов

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

Проверка существования сетевых ресурсов

Проверить как на разных системах RAR будет паковать в сетевой ресурс.
Там есть какие-то настройки в системе.
Если RAR работает нормально - нужно проверять доступность как-то не через DirectoryExists().

Глубина ведения лога

Сделать процедуру ведения лога, в настройках задавать глубину его информативности, например:
0 - только сообщения об ошибках (ошибки всегда пишутся в лог)
1 - изменения файлов в лог
2 - плюс сообщения о запуске архиватора
4 - сообщать об ошибках в Baloon Tip
8 - сообщать о запуске архиватора в Baloon Tip
так 7 = 1 or 2 or 4 писать в лог сообщения об изменениях файлов, о запуске архиватора, а об ошибках сообщать еще балуном.

Лишние знаки в именах файлов

Иногда возникают лишние знаки на выходе монитора, типа '?', чего не может быть в имени файла или папки.
Нужно фильтровать. Хотя функция FileExists, похоже, работает на таких именах верно, нужно разобраться.

Убрать каретку в логе

Пока делал линки в логе закомментировал логику скрытия картеки, нужно вернуть как было :)

Проверка обновлений

Это конечно даром не нужно, только ради прикола и для опыта.

Можно сделать так:

  1. на github pages делаем текстовый файлик ver.txt, пишем туда текущую стабильную версию.
  2. приложение через системный (IE) прокси смотрит этот файлик и просто выдает сообщение.
  3. Эта функция должна быть настраиваема в конфиге.

Отказ от TMemo

Нужно написать свой компонент на базе TMemo или TRichEdit, основные требования:

  1. Отсутствие каретки ввода, но возможность выделения и копирования текста;
  2. Возможность изменения цвета текста и вона текста на строке;
  3. Хеадер, столбцы можно попробовать сделать табуляцией;

Это планы на дальнюю перспективу.

Архивирование каталогов

Проверить как архивируются каталоги, в RAR если путь к каталогу задан без \ он будет упакован рекурсивно, этого нам не нужно.

Версия проекта

Сделать автоинкремент номера билда, отображать его в заголовке окна, в коммитах, если были сделаны изменения в коде указывать номер билда.

Контроль перегрузки

В случае если на момент запуска архиватора предыдущая сессия архивирования не завершена - отложить запуск архиватора. Можно еще интервал архивирования увеличить вдвое.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.