Topic: Автообновление \ Auto update
Инструкция
файлы
autoUpdate.bat - обновление после завершения работы
autoUpdate_r.bat - обновление и перезагрузка программы
в bat файлах настройте Ваши директории
пример
%~dp0autoUpdate - где %~dp0 корень а autoUpdate папка в карне
в проекте настройте адрес проверки версии программы
NewV:=TIniFile.Create(ExtractFilePath (ParamStr (0))+'..\updateOut\autoUpdate.ini'); // файл с новой версией
где ExtractFilePath (ParamStr (0))+'..\updateOut\autoUpdate.ini - относителный путь к файлу
или
NewV:=TIniFile.Create('C:\updateOut\autoUpdate.ini'); // файл с новой версией
где C:\updateOut\autoUpdate.ini - обсолютный путь к файлу
в файле проверки версии программы
укажите директорию из которой будут капироваться файлы
dir=..\updateOut\update
ВНИМАНИЕ! в директории из которой будут капироваться файлы
обязателен файл no.txt (для защиты от случайности)
в данном файле содержатся имена файлов запрещенных к капированию (sqlite.db, sqlite3.dll, no.txt )
если файла не будет на месте, то bat не сработает..
далее можно нафантазировать разных вариантов )))
Параметры батника :
источник : обязательный параметр. Определяет расположение и имена файлов которые вам нужно скопировать. Данный параметр должен включать устройство или путь.
целевой_объект : Опеределяет место назначения копируемых файлов. Может включать в себя букву диска с двоеточием, имя директории, имя файла, или комбинацию их.
/w : отображает сообщение "Press any key to begin copying file(s)" и ждет вашего ответа прежде чем начать копирование файлов.
/p : будет выдавать запрос перед созданием каждого файла.
/c : игнорирование ошибок.
/v : проверяет каждый файл после их записи на идентичность исходным. В Windows XP он не используется. Оставлен для совместимости с MS-DOS файлами
/q : тихий режим. Не выводит сообщения во время работы.
/f : отображает имена файлов при копировании.
/l : отобразить имена файлов которые будут копироваться.
/g : Копирование зашифрованных файлов в целевой каталог, не поддерживающий шифрование.
/d[:mm-dd-yyyy] : копировать файлы которые изменены позже указаной даты, включаю указанную. Если не указать значение mm-dd-yyyy (месяц-день-год), xcopy будет копировать файлы которые более новые чем в папке назначения. Вообщем эта команда позволяет обновить файлы, которые изменились.
/u : копировать только те файлы которые уже есть в папке назначения. Т.е. обновить их.
/i : если источник это директория или содержит wildcards ( ну типа * ) и целевой_объект не указан, то xcopy предполагает что целевой_объект это директория и создает ее. По умолчанию xcopy запрашивает у вас целевой_объект это директория или файл.
/s : директории и поддиректории в которых нет файлов будут пропущены. Если опустить этот параметр, xcopy работает внутри одной директории.
/e : копировать все поддиректории, даже если они пустые. Эквивалентен сочетанию ключей /s /e. Совместим с ключом /t.
/t : Создание структуры каталогов без копирования файлов. Пустые каталоги и подкаталоги не включаются в процесс копирования. Для создания пустых каталогов и подкаталогов используйте сочетание ключей /t /e.
/k : при копировании сохраняется атрибут "только для чтения". По умолчанию он сбрасывается.
/r : перезапись файлов, предназначенных только для чтения.
/h : копировать скрытые и системные файлы. По умолчанию xcopy не копирует эти файлы.
/a : копировать файлы у которых имеется атрибут архива. Сам атрибут при этом сохраняется. Для установки этого атрибута можно использовать команду attrib.
/m : почти тоже что и с ключем /a, только в данном случае атрибут архива будет сбрасываться у исходных файлов.
/n : делает имена файлов и папок короткими. Может понадобиться в случае копирования с FAT на NTFS. Потомучто FAT ( 8.3 символа ) не поддерживает длинные имена как NTFS.
/o : копируется информация о пользователе файла и информация DACL (discretionary access control list).
/x : копирование параметров аудита файлов и информация SACL (подразумевает ключ /o).
/exclude:файл1[+[файл2]][+[файл3]]... : список файлов, содержащих строки с критериями для исключения файлов и папок из процесса копирования. Каждая строка должна располагаться в отдельной строке файла. Если какая-либо из строк совпадает с любой частью абсолютного пути к копируемому файлу, такой файл исключается из операции копирования. Например, указав строку \obj\ или .obj, можно исключить все файлы из папки obj или все файлы с расширением OBJ соответственно.
/y : чтобы не спрашивал когда нужно перезаписать уже существующий файл.
/-y : противоположность ключу /y .
/z : копировать по сети в возобновляемом режиме.
/? : вывести помощь. Подсказки по параметрам команды.