Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.14;
Скачать: [xml.tar.bz2];




Вниз

Обновление программы, вызываемое из неё самой ... 


Quest   (2002-01-30 12:05) [0]

Ситуация следующая, существует программа запускающаяся при запуске Windows (HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\...) и после выполнения своей задачи, мирно закрывающаяся ... так вот задача в том, чтобы перед или после выполнения своей задачи - программа проверила на удалённом ресурсе существование более свежей версии данной программы и если таковая существует - выполнить замещение (перезапись) её локального варианта ...
Как пример можно использовать DRWEB , то есть использование отдельной програмки Upgrade.exe которая и будет проверять и переписывать файл основной программы, но как результат, необходимо отслеживать закрытие основной программы и т.д. ...
ВОПРОС: но нельзя ли это сделать другим способом ?
Есть идеи?



pasha_golub   (2002-01-30 12:14) [1]

Если есть новая версия, то скачать ее, прописать в реестре вместо старой, а новая программка должна обнаружить и удалить старую. Или быть может все серъезней?



Quest   (2002-01-30 12:20) [2]

то есть менять имя программы от версии к версии (апргрейд может быть ежедневным) Например: prog1.exe -> prog2.exe -> prog1.exe -> prog2.exe -> prog1.exe -> ... ? ты это имел ввиду?



vlv   (2002-01-30 15:51) [3]

Можно использовать сообщения.
Пишешь 2 проги:
prog.exe и upgrade.exe.

prog.exe запускает upgrade.exe когда ей захочется.

upgrade.exe смотрит твой ресурс. При нахождении чего-то шлет мессагу: SendMessage(handle_PROGEXE, WM_ЗАКРОЙСЯ,0,0) и ждет зыкрытия prog.exe(опрашивая процессы). Затем тупо грузит обновление.



Quest   (2002-01-31 08:55) [4]

Не слишком ли усложнённое решение? ... выходит upgrade.exe - должен каждый раз запускаться и ждать когда завершиться prog.exe ? .... а как же происходит обновление DrWEB, при запущенной программе?



ValeraVV   (2002-01-31 11:08) [5]

Оформи весь код в DLL, оставив в EXE только загрузчик и обновлялку и распространяй DLL



pasha_golub   (2002-01-31 11:34) [6]

Можно и менять, но только бы не запутаться.




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.14;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.018 c
7-42876           WhiteRat              2001-11-10 07:00  2002.02.14  
Параллельный порт


3-42648           Eraser                2002-01-17 11:21  2002.02.14  
Изменение конкретной строки


1-42717           Welder                2002-01-30 11:21  2002.02.14  
TdrawGrid


7-42875           pOintID               2001-11-07 16:09  2002.02.14  
MDI


1-42762           _SnAke_               2002-01-31 11:57  2002.02.14  
Отображение главной формы