wyfinger / backupmachine Goto Github PK
View Code? Open in Web Editor NEWThe best file backup system in this World!
Home Page: http://wyfinger.github.io/BackupMachine/
The best file backup system in this World!
Home Page: http://wyfinger.github.io/BackupMachine/
Нужно анализировать лог работы RAR и файлы, которые ему не удалось добавить в архив добавлять в список для архивирования на следующий раз.
Добавить настройку расположения окна лога поверх всех окон.
Можно сделать настраиваемым, например для отладки.
При открытии файла конфигурации из интерфейса программы нужно мониторить закрытие этого файла (просто дождаться завершения программы-редактора не подходит из-за MDI редакторов типа Notepad++) и перезагрузить настройки.
Нужно добавить интерактивности:
Просто скачать английскую версию RAR и скопировать из RAR.txt
files_folder = %FF%
archives_folder = %AF%
Например:
a %AF% -agYYYY-MM-DD -dh -oi1 -ver -pbak -ma5 [email protected] @files.lst
Проверить как на разных системах RAR будет паковать в сетевой ресурс.
Там есть какие-то настройки в системе.
Если RAR работает нормально - нужно проверять доступность как-то не через DirectoryExists().
Нужно как-то определять кем сделаны изменения и в настройки добавить список пользователей от кого бекапить, от кого нет.
Можно сделать в виде черного и белого списков.
Добавить в настройки команды "Выполнить до архивирования", "Выполнить после архивирования"
Может быть полезно, например для чистки или отправки уведомлений.
Сделать процедуру ведения лога, в настройках задавать глубину его информативности, например:
0 - только сообщения об ошибках (ошибки всегда пишутся в лог)
1 - изменения файлов в лог
2 - плюс сообщения о запуске архиватора
4 - сообщать об ошибках в Baloon Tip
8 - сообщать о запуске архиватора в Baloon Tip
так 7 = 1 or 2 or 4 писать в лог сообщения об изменениях файлов, о запуске архиватора, а об ошибках сообщать еще балуном.
При запуске в автозапуске нужно просмотреть все ключи и удалить те, что ссылаются на наш EXE, но имеют другую метку.
А то ведь и каталог может существовать, но быть недоступным для записи.
Иногда возникают лишние знаки на выходе монитора, типа '?', чего не может быть в имени файла или папки.
Нужно фильтровать. Хотя функция FileExists, похоже, работает на таких именах верно, нужно разобраться.
Пока делал линки в логе закомментировал логику скрытия картеки, нужно вернуть как было :)
RAR возвращает коды ошибок. Нужно их проверять и если есть ошибки - показываем окно с логом или показываем Baloon Tip.
Это конечно даром не нужно, только ради прикола и для опыта.
Можно сделать так:
И вообще переинициализацию через какое-то время,
настраиваемо, по деволту можно отключить.
Нужно написать свой компонент на базе TMemo или TRichEdit, основные требования:
Это планы на дальнюю перспективу.
Проверить как архивируются каталоги, в RAR если путь к каталогу задан без \ он будет упакован рекурсивно, этого нам не нужно.
Сделать автоинкремент номера билда, отображать его в заголовке окна, в коммитах, если были сделаны изменения в коде указывать номер билда.
В случае если на момент запуска архиватора предыдущая сессия архивирования не завершена - отложить запуск архиватора. Можно еще интервал архивирования увеличить вдвое.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.