Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Копирование файла [D7, XP]


к2в2 ©   (2007-07-10 15:18:00) 

Доброго дня. Подскажите как из запуженого приложения заменить исполняемый файл.
Пишу небольшую обновлялку для своей проги... юзер запустив у себя прогу видит сообщение что программа обновилась, наживает кнопку ОК и програ обновляется. Загвоздка только что бы скопировать новый файл по сети и заменить существующый... Научите заменять файл (например Тест.ехе)файлом с таким же названием, но с учетом того что юзер запускает у себя файл с названием Тест.ехе(собственно это и есть моя прога)


Rip_1982   (2007-07-11 18:17:00) [1]

Создай bat файл (например update.bat) примерно такого содержания:

:try
del "Test.exe"
if exist "apppath\test.exe" goto try
copy "update\test.exe" "apppath\test.exe"
del "update.bat"

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


Сергей М.   (2007-07-10 15:30:00) [2]


> разве можно переименовать файл который в данный момент выполняется?


Многие ОС такие "выкрутасы" позволяют.


к2в2   (2007-07-10 15:28:00) [3]

А разве можно переименовать файл который в данный момент выполняется? о_0 По моему эффект тот же самый что и при копировании будет


Плохиш   (2007-07-10 15:21:00) [4]

1. Переименовываешь исполняемый файл
2. Копируешь новый
3. Завершаешь программу
4. При новом запуске стираешь старый переименованый файл.


Наверх

Титульная страница Поиск, карта сайта Написать письмо