Главная страница
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.033 c
1-65952
STANT
2003-11-11 00:48
2003.11.20
Принудительно обновить StatusBar


1-65870
Alexious
2003-11-09 13:20
2003.11.20
xpman


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


1-65873
Newman
2003-11-02 16:03
2003.11.20
Как удалить


14-66066
Vlad Oshin
2003-10-30 10:17
2003.11.20
А вы про синус...