Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.20;
Скачать: CL | DM;

Вниз

Перезапись своего EXE-файла   Найти похожие ветки 

 
Dr. Well   (2003-11-10 15:21) [0]

Дзень добры у хату!
Господа, подскажите (а лучше кусок кода бросьте), как приложению перезаписать свой EXE-файл.
Хочу сделать автоматическое обновление (а то проект сдавать надо - а я не успел его оптимизировать).


 
clickmaker ©   (2003-11-10 15:29) [1]

Через батник или дополнительный экзе, запускаемый из твоей проги


 
Dr. Well   (2003-11-10 15:45) [2]

говорит, Acces is Denied!


 
clickmaker ©   (2003-11-10 15:49) [3]

Свою прогу после запуска батника надо закрыть, ессно :)
И атрибута ReadOnly у экзешника быть не должно. Хотя, если копируешь командой xcopy, это можно обойти


 
Dr. Well   (2003-11-10 15:59) [4]


Это Project2/Unit1
WinExec("Delete.exe",SW_HIDE);
Application.Terminate;

Это Delete.dpr
begin
// Insert user code here
DeleteFile("Project2.exe");
end.


Не работает.


 
Dr. Well   (2003-11-10 16:02) [5]

Все понятно - не успевает...
Сделал Showmessage("") - заработало
Надо подождать

Спасибо!


 
han_malign ©   (2003-11-10 18:19) [6]

Начиная с 2000, запущенный EXE-шник можно переименовать (RenameFile,BackupFile) и процесс будет прицеплен к переименованному файлу(выполняющимся процесом будет заблокирован именно переименованный файл) - т.о. можно записать обновление с оригинальным именем, запустить его, из текущего выйти. В обновленом, удалить переименованный (по выходу, или по таймеру(в потоке) - пока не удалится).



Страницы: 1 вся ветка

Текущий архив: 2003.11.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
14-66104
VictorT
2003-10-28 22:05
2003.11.20
Ищется рассказ.


3-65793
Davinchi9
2003-10-30 16:35
2003.11.20
Help по ADO


1-65897
VJar
2003-11-08 11:30
2003.11.20
Помогите описать класс


6-66031
Vint45
2003-09-24 11:13
2003.11.20
Использование сокета(клиента) в консольном приложении


6-66035
Nastya
2003-09-24 11:56
2003.11.20
TClientSocket, TWinSocketStream;