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

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

Как подменить exe-шник из него самого? [D3, NT4]


Сержик ©   (2002-01-18 09:48:00) 

Есть прога, которая должна сама себя обновлять. (Запустил её, кнопочку нажал, она: "вставьте дискету", на диске новая версия этой же проги, которая должна заменить старую.)
Как сделать, чтобы юзер сам файлы не гонял?


Andrey   (2002-01-18 13:22:00) [1]

> Builder
Сначала я хотел привести ссылку, но просто ненашел ее.


Builder   (2002-01-18 13:12:00) [2]

2 Andrey © ? 2 All
По поводу пунка 2 - посмотрите в факе - там обсуждалась тема, как удалять свой же екзешник.


Andrey   (2002-01-18 10:59:00) [3]

1. Копируеш приложение (*.EXE, *.DLL, etc) с дискеты во временный каталог.
2. Из своего приложения создаешь BAT-файл который должен выполнить удаление твоего приложения из основной директории как только его позволит удалить система, копирование из временной директории в основную директорию и запуск твоего приложения.
3. Запускаешь BAT-файл.
4. Завершаешь приложени (система отпускает все файлы твоего приложения) а дальше дело BAT-файла.

Вроде все.

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

P.P.S. Хотя лучше изначально использовать архитектуру приложения предложеную Digitman-ом.


Digitman   (2002-01-18 09:59:00) [4]

1. Используй одноэкземплярное приложение.
2. Данные, требующие модификации, храни в DLL, используемой только твоим приложением.
3. Для обновления DLL выгрузи ее из памяти и обнови файл библ-ки


Наверх

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