Форум: "Основная";
Текущий архив: 2003.05.05;
Скачать: [xml.tar.bz2];
ВнизКак экзешнику сапдейтить самого себя? Найти похожие ветки
← →
Zelius (2003-04-22 21:21) [0]Делаю авто-апдейт через интернет, сначала скачиваю cab-файл, потом переименовываю экзешник (добавлением ".old"), затем извлекаю файлы из каба, запускаю извлеченный экзещник и по Халт выхожу из программы; а запускаемый экзешник при старте проверяет наличие файла с ".old" и удаляет его! Так вот проблема, файл с ".old" почему-то не удаляется, FileExists возвращает False, хотя он существует в эскплорере, такое ощущение, что на момент старта его нет :( Кто поможет? Может я не правильно вообще делаю? Спасибо!
← →
Матка (2003-04-23 05:43) [1]Бррррррррррр!
Может не надо Халтом завершать?
← →
Zelius (2003-04-23 13:15) [2]Новь ведь в эксплорере файл виден сразу?!?!
← →
Mike Kouzmine (2003-04-23 13:28) [3]А ты делай это другим приложением.
← →
Zelius (2003-04-23 13:43) [4]это понятно, я так делал... но в одном удобнее!
← →
ErikIvanov (2003-04-23 13:43) [5]У тебя родительский процес еще незавершился, надо подождать его окончания. Я сделал аналогичную систему. У меня процес заходить на ftp скачивает оттуда фаил конфигурации, сравнивает версии, решает надоли скачивать архив, скачивает дополнительные модули из файла конфигурации(свой распоковщик), запускает его. Далее распаковщик ожидает конца родительского процеса
ProcessHandle := OpenProcess(PROCESS_ALL_ACCESS,false,ProcessID)
...
LastErr := WaitForSingleObject(ProcessHandle, INFINITE)
После сохранения bak распаковывает архив, создавая log. И запускает обновленую программу.
← →
Zelius (2003-04-23 14:31) [6]Не все так просто! У меня один файл и я хочу сделать его самообновляющимся!
← →
Zelius (2003-04-23 16:44) [7]Вроде справился, запахало! Ошибка была в использовании WinExec, переделал с CreateProcess.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.05.05;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c