DataCopy - персональная страница


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

при старте программы
по указанию пользователя
1 раз в 10 минут
1 раз в час
1 раз в сутки
1 раз в неделю
1 раз в 10 дней
1 раз в месяц

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


Установка и настройка DataCopy

Программа не требует установки.

Файл DataCopy.ini имеет следующий вид:

[Main]
DataFullPath=C:\Program Files\DataCopy\Data
DefFileNameFullPath=C:\Program Files\DataCopy\Data\WatchDef.wth
DefLogNameFullPath=C:\Program Files\DataCopy\Data\WatchLog.Log

Где:

DataFullPath - полный путь к каталогу данных программы
DefFileNameFullPath - полный путь и имя файла заданий
DefLogNameFullPath - полный путь и имя лог-файла


Программа пока в стадии beta, поэтому приветствуются замечания и предложения. Так же приветствуется спонсорская помощь :-) - типа наброски по документации программы, место на нормальном хостинге, помощь в дизайне программы и тому подобное.
Если есть идеи интересных программ, или коммерческие предложения - пишите.

Предложения пользователей

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

Установка, Справочная система

ОпцияКоментарийРеализация
При первом запуске сделать возможность добавления программы в меню автозагрузки Функция для ленивых :-) Скорее всего, когда будет инсталляция программы - тогда и реализуется.В будущем
При первом запуске автоматически создавать ini файл и запрашивать у пользователя пути для файлов Неоднократные замечания. Сделаю.Реализовано в версии 0.6. Пути не запрашивает, использует в качестве пути текущий путь к программе
Сделать описание программы, в идеале - человеческий HelpПостараюсь. Сейчас осваиваю инструментарий для работы с chm файламиВ скором времени

Ведение логов

ОпцияКоментарийРеализация
Хотелось бы процесс синхронизации как-то визуально отображался. Не обязательно термометр, но хотя бы в статусной строке что-то писалось.
Типа: "копируется файл1"
"копируется файл2"
И по окончании обязательно надо сообщение, что процесс закончен.
Уже сделан - во время синхронизации в статусной строке выдается имя текущего копируемого файла, по окончании задания синхронизации - в Лог окне появляется сообщение о синхронизации. Если хотите выдачу процентов копирования или прогресс бар - пишите. Сделано
И в логе чтобы был список измененных (читай скопированных) файлов. По всей видимости необходимо вводить систему UNIX - уровней отладки - простой лог, более сложный, детальный и тд. Если это очень актуально - пишите.Частично реализовано. При установке Ведение расширенного лог файла.
Вести журнал изменений в папках (ОЧЕНЬ Важно !!!).
Пример: (10.05.2003 - Папка Такая
Файлы такие и столько
Изменение размера +/- столько
Кол-во файлов +/- столько
!!! В данной папке на сегодняшную дату были
удалены файлы * такие * ),
т.е. должен быть журнал итогов за контрольный период - год
,неделя, день, час, минута, сек. - ПО ВЫБОРУ !!!
Об этом писал чуть раньше. Если очень надо - пишитеРеализация во вторую очередь

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

ОпцияКоментарийРеализация
Программа обновляет даже те файлы, которые в источнике старее. Этот момент должен быть четко описан. И он не всегда очевиден.
А вообще этот момент лучше настраивать.
Например:
- обновлять все,
- обновлять только старые файлы
- если найден, то не переписывать
При синхронизации производится простая проверка
если размер файлов не совпадает,
или
если атрибуты файлов не совпадают,
или
если дата создания файла - источника новее даты файла-приемника
- произвести синхронизацию.
В расширенных возможностях реализовано
- обновлять все,
- обновлять только старые файлы
- копировать отсутствующие файлы
Реализовано
Ты каким файловым менеджером пользуешься? Я это к чему. Если твою замечательную и нужную программу разработать как плагин под Total Commander, то число желающих ее себе установить возрастет на порядки. Во-вторых, за полезные плагины ghisler бесплатно дает регистрацию (хоть это и не веский довод;). В-третьих, ее можно уже будет разместить на хороших сайтах типа гислеровского, wincmd.ru и т.д. А если разработчикам понравится, то они его модульно разместят в своей следующей версии (с отчислениями в адрес ее написавшего;). В-четвертых, Total, обычно, у всех его пользователей запущен целый день (сворачивается в трей, если мешает, порой, на экране). То есть бэкапить из-под него вполне реально и, может быть, проще, чем запускать процесс отдельно. Может я и ошибаюсь? Ведь можно использовать функции копирования самого командера (там есть и пункты "заменить старые файлы", который реализовывать отдельно придется без total-a). Ну и, бэкап по сети, вероятно, проще будет сделать. Именно сетевой бэкап чаще востребован. Такое надо? Я вот Farom пользуюсьВряд ли
Что на мой взгляд, в программе должен быть ВЫБОР (в настройках):
1. Обновлять или нет ранее записанные ИНДЕНТИЧНЫЕ ПО НАЗВАНИЮ файлы;
2. Измененные копии ранее записанных файлов писать по измененным именем : ~1...до бесконечности (чтобы была возможность иметь полный архив изменений проектов и файлов);
3. Различать изменение файлов в большую и меньшую сторону (это важно !!!)
4. * ВАЖНО * Уметь работать с файлами *.zip, *.zif (надо чтобы при записи *.zip, можно было не переписывать тотже файл *.zif, и чтобы эти папки не проявлялись просьбой "над ли записывать, то что ранее было записано ?")
Буду думать.Не знаю
И нет несколько масок :( только повторять задания с новой а если бы
*.exe;*.dll;*.pas
or
*.exe,*.dll,*.pas
ЛогичноРеализовано в версии 0.6
1. Сейчас копируется содержимое указанной папки - надо бы копировать папку с содержимым.
2. В окне EditWatchForm ввести (дополнить) возможность вводить данные с клавиатуры и из буфера обмена. А в дальнейшем хорошо бы ввести возможность копирования с архивацией, используя архиватор(ы) пользователя.
Буду делатьВо вторую очередь
Научи ее запоминать размеры,а то в XP выглядит не хорошо Буду делатьВо вторую очередь
часто закрываю программу на крестик привык что в прогах есть настройка: сворачивать в трей при закритии yes/no ОкВскоре
- вообщем то мне (это мое личное мнение, у других наверое другое) запуск прог после завершения синхронизации не очень нужен, точнее говоря совсем не нужен,но былы бы очень хорошо по системным часам запускать какую-нибудь прогу, типа "архиватор", которая засовывала бы все синхронизированные папки от юзверей в один файл (вообщем-то на это способен любой, правильно настроеный, архиватор, а потом этот файл копировался куда-нибудь на стриммер (это задача уже других прог), что обеспечивало бы 100% гарантированную от всяких тама внених воздействий архивацию данных. Причем этот процесс настолько "интимный" :), что наверное подавляющее большинство админов предпочло бы, что бы он происходил часа в 2 ночи, отсюдова и пожелание видеть запуск в определенное время, хотя этим может заняться и штатный виндовый планировщик - а как бы назначать синхронизацию данных в определенное время, а то раз день конечно удобно, но возникает вопрос, а когда именно раз в день, мне бы как бы лучше вечером, что бы работу юзверей за день архивировать, ну а вообще в идеале, конечно, расписание по времени, ну например тама в 13.30 - обед, 17.30 - окончание рабочего дня, ну и т.д. ОкБлиже к 1 версии
желательно чтобы во первых программа обновляла не все файлы из sourse folder а только те которые уже лежат но устарели в destination также неплохо добавить сохранение резервной копию обновляемых файлов и переименовывание по шаблону.
Например у меня два файла разного содержания но одинаковое название на сети. Раньше я тупо обновлял каждый день и переименовывал в другое название один из них а так я задал дир и сказал что его обновлять под названием таким то.
e:\dir\dcl.dbf copy c:\dir\dcl.dbf
e:\dir2003\dcl.dbf rename c:\dir\olddcl.dbf
Потребует изменения формата файла заданийПозже
Плохо, что программа в одном задании не позволяет выделить несколько папок-источников, откуда копировать. Если я резервирую целый диск с десятком папок, то создавать "Вотч" на каждую папку неудобно. Соответственно, нужно предусмотреть удобный способ куда эти папки копировать в одном задании, предоставить возможность запихнуть из все в одну папку на архивном диске или же прямо вывалить на архивный диск как есть. О сжатии я не говорю, это, вероятно, здесь не нужно. Иначе чем ваша программа будет отличаться от микрософтовского виндоусовфского Бэкапа? Дядьку Билла Гейтса вы все равно не переплюнете, следовательно, надо бороться за простоту, красивое оформление,удобство и надежность. Почему у вас кот какой-то невыразительно серый? Далее, есть проблемка, я не знаю, решаема ли она. Предположим, Ворд или другой редактор записал в атрибутах созданного им файла последнюю дату создания или модифицирования файла. Тогда, если со времени последнего модифицирования родным редактором файл им не менялся и тем не менее по сравнению с предыдущим архивированием его размер отличается, это значит, что файл испорчен вирусом или каким-то тараканом залезшим на диск. Ваша программа должна отслеживать это (где-то хранить информацию о датах модифицирования, датах последнего резервировагния и размерах файлов) и выдать предупреждение о возможной порче файла, предоставив пользователю возможность отказаться от его копирования до выяснения обстоятельств. Чтобы испорченным файлом не заменить хороший. Такое надо?Попозже
Неплохо бы релизовать копирование самой Watch, несколько неудобно вводить 20 раз адрес, различающийся 1 цифрой (user1,2,3) Такое надо?Попозже

Синхронизация по сети уже реализована (БЕЗ ИСПОЛЬЗОВАНИЯ ПАРОЛЕЙ!!!!!) -необходимо тестирование.Усиленно жду пожеланий и помощи.


Ребята ! Чат ру не сохраняет нормально DataCopy.zip поэтому - качать с datacopy.narod.ru

Скачать программу:

DataCopy.zip версия 0.8 размер архива - 356 500 байт, размер программы - 903 680 байт

Благодаря директору ООО Империя Знаний Владимиру Козлову www.refcentr.ru у страницы есть зеркало - datacopy.refcentr.ru

Скачать программу (зеркало):

DataCopy.zip версия 0.8 размер архива - 356 500 байт, размер программы - 903 680 байт

Исправления и дополнения к программе.

Для получения уведомления об изменениях в программе - пошлите мне письмо с темой Обновления

Версия 0.80

Уважаемые пользователи! Вы не забыты!

ВАЖНО! Поменялся формат файла WTH! Необходимо удалить его перед запускрм новой программы!


Поменялся внешний вид

 

Рисунок 1 - Основное окно программы

Неоднократные Ваши пожелания по внешнему виду учтены
Добавлена возможность копирования данных вместе с корневой папкой-источником, т.е. для рисунка - если этот пункт отмечен - то в папке 2 будет создана папка images вместе со всем содержимым, в противном случае - только содержимое
Добавлена возможность расширенного лог - файла
Добавлен индикатор выполнения задания в статусной строке

Добавлена возможность двунаправленной синхронизации. Теперь можно делать полную синхронизацию(вместе со следующей возможностью). Приоритетной является папка - источник.

Реализована возможность удаления в папке приемнике (а при использовании предыдущей возможности и в папке источнике) отсутствующих в папке источнике файлов

Реализовано минимизация программы при старте

А вот с файлом помощи - пока проблема, не могу себя заставить сесть и написать.

Версия 0.60

Автоматически создается .ini файл (если его еще/уже нет). Так же создается каталог DATA (при его отсутствии)
При определении задания можно задавать несколько масок, используя в качестве разделителя точку с запятой, запятую или двоеточие
Причем можно в одной строке использовать все эти разделители. Например:
*.exe,*.com;*.bat

Версия 0.50

Реализован запуск программы пользователя по окончании процесса синхронизации задания. Ограничение - можно задать только путь и имя выполняемой программы.Без переделки структуры файлов заданий невозможно использование параметров командной строки. Вопрос - оставить как есть или переделать? (как выход - сделать .BAT файл в который прописать все что хочешь)
Добавена возможность синхронизации сетевых ресурсов.Тестировалось под WINDOWS 2000 под 98 у меня компьютеров нет.

Версия 0.30

Разрешено и реализовано перенос/копирование файлов.
Добавлена выдача сообщения в статусную строку о текущем копируемом файле.
Мелкие правки интерфейса

Версия 0.21

Исправлена проблема с маской поиска файлов.
Небольшой внутренний реинжениринг программы.
Добавлено сворачивание программы в трей.

Версия 0.1

Пилотная версия
Мои координаты:

Мой email: linbook@mail.ru


Chat.ru рекомендует: товары из Китая на сайте Asia.ru!