Что нового

SynFolders 3.0 - Программа для синхронизации папок

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Название: SynFoldes 3.0

Версия: 3.0.0.3

Категория: Файловая система

Описание: Программа предназначена для синхронизации двух (на одно задание) папок с тонкой настройкой параметров синхронизации. SynFolders 3.0 написана полностью с нуля, но является логическим продолжением предыдущих версий одноименной программы, и унаследовала все особенности ее интерфейса и принципы работы. Несмотря на то, что с первого взгляда SynFolders 3.0 может показаться немного сложной в освоении и использовании, она, на самом деле, является довольно удобным и самодостаточным инструментом для переодической синхронизации папок и контроля самого процесса синхронизации. Особенно может быть полезна для тех, кому часто приходится переносить файлы с работы домой и обратно. Программа написана полностью на AutoIt, является абсолютно бесплатной, но с закрытым исходным кодом (по крайней мере на данный момент).

Любые вопросы по использованию, улучшению и т.д., пожалуйста задавайте в этой теме. Medic84 и я по возможности постараемся оперативно на них отвечать. Также в ближайшее время будет выложена русская версия SynFolders 3.0. Если нужна краткая инструкция по использованию программы, пишите, подумаем.

Основные возможности программы:

  • Создание списка из множества заданий с индивидуальными параметрами синхронизации для каждого задания.
  • Контроль ошибок во время изменения параметров синхронизации (исключает возникновение недопустимых ситуаций, например, рекурсивное копирование папок).
  • Запуск заданий по расписанию (через определенное время).
  • Гибкая настройка процесса синхронизации и обработки заданий послее ее выполнения.
  • Импорт и экспорт списка заданий, включая отчет, в .sfl файл с возможностью сжатия текстовых данных.
  • Оптимизация процесса синхронизации для разгрузки процессора.
  • Безопасное копирование файлов (практически исключает потерю файлов при возникновении внештатных ситуаций).
  • Безопасное удаление файлов (в корзину) во время синхронизации.
  • Ведение подробного отчета о ходе выполнения синхронизации.
  • Запись отчета в реальном времени в .log файл.
  • Запуск программы при старте системы в режиме планировщика.
  • Относительно небольшое потребление оперативной памяти.
  • Независимое сохранение настроек синхронизации (профили).
  • Поддержка сетевых (UNC) путей.
  • Интуитивно понятный и ненавязчивый интерфейс.
  • Возможность работы программы через меню в системном трее.
  • Визуализация процесса синхронизации.
  • Полноценная поддержка Windows Vista и 7.

Важные замечания:

  • Не удаляйте, не переименовывайте и не изменяйте содержимое выбранных папок во время их синхронизации (надеюсь понятно почему).
  • Нежелательно выключать компьютер или завершать текущую сессию непосредственно во время процесса синхронизации в Windows XP, несмотря на то, что программа корректно завершится и отобразит соответствующее событие в отчете и .log файле.
  • При двусторонней синхронизации удаление файлов невозможно (соответствующая опция будет неактивна). Если необходимо производить удаление файлов, то используйте одностороннюю синхронизацию.
  • По умолчанию, если папка источник является пустой на момент запуска синхронизации, то программа выдаст ошибку и зафиксирует это в отчете и .log файле. Для предотвращения этого включите соответствующую опцию в настройках синхронизации.
  • Каждое задание в списке заданий может хранить отчет только о последней выполненной синхронизации. При следующем запуске задания, предыдущий его отчет будет полностью заменен на новый.
  • В отличии от отчетов, .log файл хранит всю историю обработки заданий, которые когда-либо запускались, и ограничен только лишь заданным максимальным размером файла (см. настройки программы).
  • В случае слишком больших отчетов (десятки тысяч записей) и большого количества заданий, могут появиться задержки при загрузке программы. Чтобы от этого избавиться, очистите наиболее большие (или все сразу) отчеты с помощью соответствующих кнопок в панели инструментов.
  • В случае отложенной синхронизации рекомендуется использовать понижение приоритета процесса для разгрузки процессора. Эта опция является глобальной и включается в настройках программы, особенно хорошо работает в Windows Vista+.
  • Для того, чтобы иметь возможность восстановить замененные или удаленные файлы после выполнения синхронизации, включите режим защиты (перемещение оригинальных файлов в корзину перед их заменой или удалением). Но имейте в виду, что при этом может существенно снизиться скорость обработки заданий, особенно в случае большого количества файлов.
  • Не рекомендуется использовать одно и тоже задание для разных целей, меняя в нем лишь названия папок источника и назначения. Лучше создавайте разные задания для каждой пары папок, например "Home To Work" и "Work To Home". Также вы можете сохранять параметры синхронизации в независимые профили, которые в последствии могут быть применены к любому заданию из списка заданий.

Разные полезности:

  • Кликните два раза левой кнопкой мыши по заданию или нажмите ENTER, когда в списке выделено любое задание, и откроется диалоговое окно настройки параметров синхронизации для этого задания.
  • Кликните два раза левой кнопкой мыши по иконке задания (если есть), и откроется диалоговое окно отчета для этого задания.
  • Нажмите SPACE, когда в списке выделено любое задание, и оно изменит свой статус с "Ready" на "Disabed" и наоборот.
  • Кликните правой кнопкой мыши по любому заданию, и для него будет выведено контекстное меню.
  • Также можно вызвать соответствующее контекстное меню в диалоговом окне отчета.
  • Для удаления задания из списка заданий можете нажать DEL вместо кнопки "-" в панели инструментов.
  • Если удерживать CTRL и нажать на кнопку "-", "Reset" или "Reset All" в панели инструментов или нажать DEL, то окно с предупреждением выводится не будет.
  • Триггер на влючение планировщика (кнопка "Scheduler" в панели инструментов) срабатывает через 10 сек бездействия после его активации.
  • Для уменьшения размера файлов (~ в два раза) экспортируемых списков заданий (*.sfl), особенно, если вы включаете в них отчеты, выберите кодировку "ANSI" (по умолчанию стоит "Unicode").
  • Для быстрой очистки всего списка заданий закройте программу и удалите файл SynFolders.sfl в папке с программой.
  • Для восстановления всех глобальных настроек в изначальное состояние удалите все параметры (кроме "Path", если использовался инсталлятор) в следующем разделе реестра:

    HKEY_CURRENT_USER\Software\Y's\SynFolders


Лицензия: Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported

88x31.png


Операционная система: Windows XP, Vista, 7

Файлы: EXE, EXE (Инсталлятор)

Скриншоты:























Источник: SynFolders (оффициальный форум)

Авторы: Yashied, Medic84

Примечание: Авторы не несут ответственности за потерю данных или любые другие убытки в результате использования этого программного обеспечения. Данное программное обеспечение предоставляется "КАК ЕСТЬ" и может быть использовано НА СВОЙ СТРАХ И РИСК. Не существует никаких гарантий (явно выраженных или подразумеваемых) в отношении качества этого программного обеспечения.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Такой наш скромный подарок к новому 2012 году ;)

:IL_AutoIt_1: Всех с наступающим Новым Годом! :IL_AutoIt_1:​
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Ну что же, на первый взгляд очень, очень даже недурно! Скажу даже больше, а именно, то, что сказать нечего! ;D
Отлично! :ok:
Останется только попробовать, в действие! :beer:
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
я так полагаю, код закрыт?
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341

BaRsupillamy

Новичок
Сообщения
58
Репутация
0
так и знал, что к НГ управитесь :smile: молодцы ребята :smile: только тестить пока никак, потому что в основном использую для ношения информации с работу/на работу... ждём конца выходных...
но спасибо :smile: приятный подарок...


Добавлено:
Сообщение автоматически объединено:

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

пути нельзя ручками писать? или я опять что то не так сделал? у меня пути одинаковые на флэшке и компе... т.е. я скопировал задание и думал просто поменять диск D на J... мне это вроде как не позволено...

сортировку, может, зря выключили в ListView... было бы полезно, если бы задания назывались по принципу HomeToWork и WorkToHome... скрин вот свой показал... это я так быстренько набросал, что мне надо было бы от проги вашей...

на работе пишу программку одну... очень много идей взято было с форума, в частности, как раз из исходника SynFolders... хотелось бы и к этой увидеть исходники, если это будет возможно...
а с единственного комментария в исходнике Medic84 улыбаюсь каждый раз, как его вижу :smile:


Добавлено:
Сообщение автоматически объединено:

или ваше предложения для решения задачи предложенной выше делать два таск-листа? может сделать какой то быстрый запуск одним нажатием кнопки нескольких таск-листов? т.е. нажал кнопку с подписанным таск-листом "WorkToHome" (ограничить несколько букв в подписи кнопки), отработал один таск-лист... перед уходом на работу нажал кнопку два... отработал другой... или в нынешней версии есть какой то вариант, которого я не увидел?
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
BaRsupillamy [?]
или я недопонял суть профилей... помогите разобраться...
Профили - это фишка Yashied, думаю он лучше объяснит для чего они нужны.

русский язык не помешал бы всё же... хотя вроде и в английском варианте всё понятно...
Русский язык будет, но позже.
пути нельзя ручками писать? или я опять что то не так сделал? у меня пути одинаковые на флэшке и компе... т.е. я скопировал задание и думал просто поменять диск D на J... мне это вроде как не позволено...
Если я Вас правильно понял, то лучше сделайте 2 разных задания, чем менять буквы.

сортировку, может, зря выключили в ListView... было бы полезно, если бы задания назывались по принципу HomeToWork и WorkToHome...
Мы ее и не включали =) Не видели смысла в ней.
хотелось бы и к этой увидеть исходники, если это будет возможно...
Вряд ли это будет возможно в ближайшем будущем. Только представте, в версии 2.0.0.5 было 600 строк кода, а в версии 3.0 в 12(!) раз больше. был вложен просто неописуемый труд. И в принципе принцип программы остался прежним.
Если же Вас конкретно интерисует тот или иной момент в программе и как он был осуществлен - спрашивайте, мы постараемся ответить на Ваши вопросы.
 

BaRsupillamy

Новичок
Сообщения
58
Репутация
0
ну это правильно :smile:
если будут вопросы, я спрошу... я сделал тоже, как и у вас, контекстное меню по нажатию... но пока событий меньше обрабатываю... только правй клик, левый и дабл...
про профили очень интересно узнать...
на скрине видно, что я и сделал: два задания для копирования с флэшки и два для копирования с компа на флэшку... интересует возможность запустить проверку обоих путей одним кликом... т.е. чтобы профиль объединял пути... по моему что то похожее вы и сделали... просто я интуитивно не догадался, как правильно воспользоваться... потому подожду объяснений...


Добавлено:
Сообщение автоматически объединено:

про замены букв - я имел в виду сам факт... вы даёте создать копию уже имеющейся записи для упрощения создания похожих заданий... я бы в данном случае дал пользователю вручную путь ввести... как мне надо изменить две буквы в двух строках - это проще, чем выбирать через папки пути... это у меня они короткие, а у кого то может оказаться большая вложенность папок, к примеру... а так, только исправить корневые буквы...
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Профили - это просто сохранение всех параметров синхронизации под одним именем в реестре.

HKEY_CURRENT_USER\Software\Y's\SynFolders\Profiles

Выбираются в диалоге создания/редактирования задания вместо ручного изменения всех параметров. Как вариант, можно еще скопировать само задание посредством контекстного меню.

По нажатию зеленой кнопки запускаются все активные задания (те, которые "Ready"). Для запуска только одного задания, как активного, так и нет, можно либо нажать кнопку "Run" в панели инструментов, либо через контекстное меню.

Пути писать ручками нельзя во избежаний всяких нехороших случайностей. Но, возможно, в обновлении это и будет добавлено.

Сортировки здесь нет по нескольким причинам, но вы можете сами перемещать задания вверх/вниз.

BaRsupillamy, я в этой версии не стал добавлять возможность объединения несколько заданий в группы, хотя и была такая идея. У вас сейчас есть несколько вариантов:

  • Поместить все необходимые папки в одну и создать на нее одно задание.
  • Создать для каждой папки свое задание и запускать их все поочереди.
  • Запускать синхронизацию посредством зеленой кнопки или через трей, но перед этим отключить все ненужные задания, нажав на них пробел, или через контекстное меню.
  • Экспорт/импорт списка.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
BaRsupillamy

Вы можете воспользоваться двусторонней синхронизацией (если не требуется удалять файлы).

Кстати, я здесь обнаружил небольшой баг (исправил) - при двусторонней синхронизации файлы можно копировать и заменять на новые (второй режим) в обоих направлениях, но нельзя удалять и заменять на старые. Скачайте архив заново. Также поправил описание в первом сообщении.
 

SECTOR

Продвинутый
Сообщения
399
Репутация
59
Вау :smile: Все что могу сказать! :smile:
С новым годом)
 

Dm666

Осваивающий
Сообщения
221
Репутация
48
Хорошая программа, чувствуется многолетний опыт авторов. Оформление так вообще выше всяких похвал. :ok:
Спасибо за релиз!

Есть пара вопросов по функциональности:
1. Судя по скорости работы, синхронизация делается уже не через _RecFileListToArray, а как-то иначе. Можно хотя бы в общих чертах узнать принцип?

2. Возможность исключить из обработки определенные файлы/каталоги отсутствует? (то, что задается в _RecFileListToArray последними двумя параметрами)

3. Фалы Read-Only не удаляются?

4. Периодически появляется (0008) Unexpected error, в разных местах, какой-либо логики в ее появлении не нашел. Что бы она могла значить?

###SynFolders v3.0###

2012-01-01 13:08:07 (0000) Start synchronization... C:\Program Files\AutoIt3 >>> E:\Temp\Dropbox\Install\Utilites\AutoIt3
2012-01-01 13:08:16 (0000) File copied E:\Temp\Dropbox\Install\Utilites\AutoIt3\au3.user.calltips.api.test
2012-01-01 13:08:19 (0008) Unexpected error E:\Temp\Dropbox\Install\Utilites\AutoIt3\!Help\MouseSetOnEvent_UDF_1.8.zip

2012-01-01 13:11:22 (0000) Start synchronization... C:\Program Files\AutoIt3 >>> E:\Temp\Dropbox\Install\Utilites\AutoIt3
2012-01-01 13:11:34 (0005) Cannot delete file E:\Temp\Dropbox\Install\Utilites\AutoIt3\au3.user.calltips.api.test

2012-01-01 13:12:28 (0000) Start synchronization... C:\Program Files\AutoIt3 >>> E:\Temp\Dropbox\Install\Utilites\AutoIt3
2012-01-01 13:12:37 (0008) Unexpected error C:\Program Files\AutoIt3\AutoIt Debugger GUI
2012-01-01 13:12:39 (0005) Cannot delete file E:\Temp\Dropbox\Install\Utilites\AutoIt3\au3.user.calltips.api.test
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Dm666 сказал(а):
Судя по скорости работы, синхронизация делается уже не через _RecFileListToArray, а как-то иначе. Можно хотя бы в общих чертах узнать принцип?

Рекурсивный поиск файлов с помощью FileFindFirstFile() и FileFindNextFile().

Dm666 сказал(а):
Возможность исключить из обработки определенные файлы/каталоги отсутствует? (то, что задается в _RecFileListToArray последними двумя параметрами)

На данный момент можно только задать маску для обработки, но не исключающую маску.

Dm666 сказал(а):
3. Фалы Read-Only не удаляются?

Нет, на то они и "Read-Only".

Dm666 сказал(а):
Периодически появляется (0008) Unexpected error, в разных местах, какой-либо логики в ее появлении не нашел. Что бы она могла значить?

Это уже более интересно. Ошибка 8 говорит, что нехватает памяти... Вообщем, не о чем не говорит.

Какая система?
Включен ли антивирус?
E:\ - это что за диск?
Производятся ли какие-нибудь посторонние действия с папками во время синхронизации?

P.S

Я сейчас сколько не тестировал, но так и не смог получить эту ошибку. А вообще, это системная ошибка и возвращает ее FileFindNextFile().

Windows 7, x86
 

Dm666

Осваивающий
Сообщения
221
Репутация
48
Yashied
Понятно, спасибо.
Yashied [?]
На данный момент можно только задать маску для обработки, но не исключающую маску.
Нет, на то они и "Read-Only".
А жаль. Такие опции бы пригодились :whistle:


Это уже более интересно. Ошибка 8 говорит, что нехватает памяти... Вообщем, не о чем не говорит.Какая система?Включен ли антивирус?E:\ - это что за диск?Производятся ли какие-нибудь посторонние действия с папками во время синхронизации?
WinXP SP3, IntelCore2 Duo E8500, 4Gb RAM.
Е: - Логический раздел. Терабайтник разбит на несколько кусков, для удобства. На Е: 200Гб всего, из них 14Гб свободно. Антивирус Kespersky 5.0 (раритет ;))

Но это все не важно, причину ошибки отловил. Виноват работавший в фоне TotalVideoConverter, перегонявший mpeg в avi. При чем брал он mpeg с диска Н: а создавал avi на том же самом многострадальном Е: ;).
Если при этом запустить синхронизацию, то с вероятностью 95% ругнется 1 раз на совершенно случайный каталог. Синхронизация при этом не обрывается (на сколько мне удалось протестить) так что вроде как все нормально ;)
 

Guezt

Продвинутый
Сообщения
335
Репутация
82
Отличная работа!
Хотелось бы в следующих версиях что бы список синхронизации сохранялся (я не понял как его сохранить только импорт экспорт?! ) тогда какой смысл указывать периодичность обновления если после закрытия программы и повторного ее открытия список пуст пробовал сохранять в профиль но у меня выдает ошибку...
4099886484_20120108_013103.png

ну на счет первого могу грубо ошибаться, прошу прощения если это не так, а вот подтверждение выхода из программы не помешало бы? а то просто клик и вышли(по привычке просто qipskype и другие которые сворачиваются в трей по крестику).
p.s. Win 7 x64
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Я даже и не знаю что и сказать, список заданий должен сохраняться в файле SynFolders.sfl в папке с программой и автоматически восстанавливаться при загрузке. Возможно это происходит из-за redirect'а в x64... Попробуйте скопировать файлы программы в другую папку, например C:\SynFolders\ (не в Program Files). Это поможет мне выявить причину ошибки.
 

Guezt

Продвинутый
Сообщения
335
Репутация
82
Все разобрался, просто надо было запустить с правами администратора программу, иначе ни ошибку не выдает (я так понял нет проверка на права администратора при запуске) ни сохраняет в папку инсталяции по умолчанию. в принципе достаточно 1 раз запустить с правами администратора создать список и все работает - спасибо еще раз :smile:
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Guezt Gutsy сказал(а):
...пробовал сохранять в профиль но у меня выдает ошибку...

Профиль включает в себя только параметры синхронизации, но не папки.
 

BaRsupillamy

Новичок
Сообщения
58
Репутация
0
интересует такой вопрос... хочу, чтобы файлы удалялись... я писал, что хочу запускать два профиля, один для дома, второй для работы... специально для этого и на рабочем и на домашнем компе делаю папки по одинаковым путям... так вот... при удалении с флэшки файлы будут попадать в корзину или нет? если нет, можно ли сделать, чтобы файлы где то всё таки бэкапились... сделать аналог корзины в папке самой программы, например, или что то подобное...
и всё таки, будете ли развивать и может будет способ для быстрого запуска профилей? сейчас, если я всё правильно понял и настроил, для запуска профиля жму Import, подтверждаю его, потом жму кноку запуска... хочется как бы кликов поменьше :smile: в идеале один...
спасибо...

P.S. И файлы что то из шапки в Опере не скачались... проверьте кто нибудь...
при запущенной синхронизации красная круглая кнопка нажимается только в верхней её части... так у всех или только у меня? но не всегда, иногда нормально :smile: так что, возможно, у меня какие то глюки...
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Для того, чтобы файлы удалялись в корзину, нужно включить эту опцию в настройках задания (вкладка "Protect"). По умолчанию она отключена. Красная кнопка у меня всегда нажимается в любом месте и на любой ОС. Это контролирует Skin UDF, который я использовал уже в нескольких программах. И пока никаких глюков не замечал. Файлы в первом посте нормально скачиваются, только закачка идет через .html файл (это моя задумка).
 
Верх