1 (edited by sibprogsistem 2019-03-12 22:22:57)

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 : копировать по сети в возобновляемом режиме.

/? : вывести помощь. Подсказки по параметрам команды.

Post's attachments

Attachment icon autoUpdate.7z 3.29 kb, 459 downloads since 2019-03-12