![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
Плаха |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 10.11.2004 Где: МО п. Киевский Репутация: нет Всего: нет |
Подскажите, как можно реализовать автомотическое обновлений программы. Может быт есть какой нибуть готовый модуль или плагин.
Это сообщение отредактировал(а) Плаха - 30.5.2005, 18:27 --------------------
Принимай то что есть и устраивайся как хочеш |
|||
|
||||
Pakshin A. S. |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 5056 Регистрация: 16.2.2003 Репутация: 21 Всего: 61 |
Это что тебе конкретно нужно? Через нет?
Лично я могу расписать способ "сделай сам" (т. е. без компонентов через прямое обращение к файлам).... ![]() |
|||
|
||||
Плаха |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 10.11.2004 Где: МО п. Киевский Репутация: нет Всего: нет |
распиши если не трудно.
--------------------
Принимай то что есть и устраивайся как хочеш |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
мне кажется, что нужно львиную долю кода писать в Dll и уже из программы качать новую Dll, выгружать старую, проверять новую, и загружать новую.
|
|||
|
||||
mvdr |
|
|||
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
можно сделать файл, в котором хранить инфу типа даты программы, ее номера, или названия всех файлов, используемых в программе. при записи подобной программы (новой) сравнивать 2 файла (которые содержат такую инфу), в результате, если новая программа является новее, то производить перезаписывание. можно поподробнее описать, если заинтересует
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
Плаха |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 10.11.2004 Где: МО п. Киевский Репутация: нет Всего: нет |
Понятно. Спасибо. Буду пробовать
--------------------
Принимай то что есть и устраивайся как хочеш |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Так тебе через инет нужно или как? Программа должна обновлять саму себя или, как у антивирусов - программа обновления отдельно? |
|||
|
||||
mvdr |
|
|||
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
если что, я могу более подробно рассказать, нежели написал
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
Versioninfo еще никто не отменял ![]() обновление - чаще всего новый дистрибутив приложения целиком или только с обновленными элементами (плагнины, внешние ресурсы и т.п) патчи - програмки которые содержат в себе данные о разнице кода в оригинальном приложении и в обновленном, и при запуске меняют ту часть файла которая была модифицирована -------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
mvdr |
|
|||
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
z-END, я не для сервера, а для случая без него.
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
Femida а откуда тогда обновление? (тем более автоматическое)
моя не понимать ![]() -------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
|
|||
|
||||
mvdr |
|
|||
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
z-END, есть программа. потом автор выпускает новую, ты скачиваешь ее. и ставишь себе - и вот тебе и проверка
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
Femida
![]() какая проверка?! версии приложений как раз для этого и существуют чтобы юзеры (ламеры и прочие) могли понять где что новее ![]() ЗЫ и в каком-же месте тогда здесь "автоматическое обновление" ? юзер автоматически при выходе в инет делает-чтоли? ![]() -------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
mvdr |
|
|||
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
z-END, ладно, но номер ничего не говорит. Допутим: СуперЛамер выбирает ОС. Он видит: 95, 98, 2000, потом идет Me,XP .Откуда ему знать, что ХР это самая последняя из представленных? У него стоит ХР, Он ставит Винду 2000, а ему и говорят: что ваша 0С новее
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
Femida открою тебе секрет, что даже у виндовс ХП есть версия, и она выше чем у 95, 98, 2000, МЕ, щелкни правой мышкой на "мой компутер" и выбери свойства и посмотри вкладку "общие"
![]() Добавлено @ 17:09 Но вообще согласен, ситауцая такая возможна.. но по одной причине - нерадивые разработчики софта ![]() -------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
mvdr |
|
|||
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Это не секрет
![]() ведь драйвера оповещают каким то образом?! (но некоторые, сволочи нет) -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Вот, нарисовал процедурку обновления с инета.
Для ее работы требуется, чтобы было подключение к инету. Хотя... И без него не должно сглючить.
P.S. Сам не проверял, но работать должно. P.P.S. Вопрос с прокси решайте уже сами. P.P.P.S. Почему дату храню в отдельном файле? А потому, что мне нужно хранить ее в том же виде, какой выдает сервер. А разные сервера оформляют строку по разному. Это сообщение отредактировал(а) Snowy - 31.5.2005, 17:41 |
|||
|
||||
Гость_Юра |
|
|||
Unregistered |
Вот еще вопрос, может конечно не в тему(тогда сории
![]() Например я сделал прогу версии 1.2.0 в ней оказался большой глюк(например "if ... then" забыл поставить коегде) и я быстро сделел версию 1.2.1 без глюка. И выложил новую версию. Но exe'шник моей проги весть 2,5 mb и юзеру качать каждый раз 2,5 метра просто влом(или дорого). Как бы сделать такую маленькую прожку(патч) которая бы "превращала" прогу версии 1.2.0 в 1.2.1. |
|||
|
||||
z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
в JEDI есть для этого компонет. или пиши сам, смысл патча я писал выше
-------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
Гость_Юра |
|
|||
Unregistered |
Подкить пример использования Джедаевскоко(JEDI) компонента, а то я сёдня туплю.
|
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
У Кладова есть утилитка, которая делает маленький патч.
Как раз для таких целей, когда поменялся не байтик в коде, а сменилась версия.. Если сходить на страницу KOL (http://bonanzas.rinet.ru/) , там найдешь. (http://bonanzas.rinet.ru/updater.zip - GUI версия) (http://bonanzas.rinet.ru/CUpdater.zip - консольная версия) |
|||
|
||||
Неназываемый |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 34 Регистрация: 25.5.2005 Репутация: нет Всего: нет |
А я просто дистрибутив сделал с BPL а обновляется ASPack'нутый сжатый экзешник. У меня 40 кб. Я думаю это не много даже для диал аперов.
|
|||
|
||||
MacTep |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1292 Регистрация: 4.8.2003 Где: г. Самара Репутация: 4 Всего: 4 |
Snowy, можно небольшое пояснение по твоему коду??? Что-то не догоняю, что здесь и к чему?
-------------------- (A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :) |
|||
|
||||
Rodman |
|
|||
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 7 Всего: 122 |
|
|||
|
||||
MacTep |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1292 Регистрация: 4.8.2003 Где: г. Самара Репутация: 4 Всего: 4 |
Rodman, спасибо, сейчас попробую.
![]() ![]() -------------------- (A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :) |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
А куда оно денется.
Проверено не один десяток раз ![]() |
|||
|
||||
Rodman |
|
|||
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 7 Всего: 122 |
я тоже его когда то реализовал... по этому примеру.
|
|||
|
||||
MacTep |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1292 Регистрация: 4.8.2003 Где: г. Самара Репутация: 4 Всего: 4 |
Странно, но не работает. Как будто исходный файл просто не удаляется... Не понимаю, что такое...
Добавлено @ 12:50 Извините, работает. ![]() И странно так: не работает удаление новой версии файла... странно... она же в конце удалиться должна.... как реализовать - не понятно... Это сообщение отредактировал(а) MacTep - 8.2.2007, 12:57 -------------------- (A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :) |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
|
|||
|
||||
MacTep |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1292 Регистрация: 4.8.2003 Где: г. Самара Репутация: 4 Всего: 4 |
С этим кодом заработала замена файла новым. Но две проблемы так и остались: не удаляется батник, не удаляется обновление. ...
![]() -------------------- (A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :) |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Ну так сам удали.
Программа же перезапускается. Вот и приберись за собой ![]() Можно также добавить
|
|||
|
||||
MacTep |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1292 Регистрация: 4.8.2003 Где: г. Самара Репутация: 4 Всего: 4 |
Все, вопрос решен. Rodman & Snowy - всем по +1.
![]() ![]() -------------------- (A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :) |
|||
|
||||
dumb |
|
|||
![]() sceloglauxalbifacies ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2929 Регистрация: 16.6.2006 Репутация: 13 Всего: 158 |
чтобы удалялся батник, перезапускать возможно нужно так:
|
|||
|
||||
MacTep |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1292 Регистрация: 4.8.2003 Где: г. Самара Репутация: 4 Всего: 4 |
Что делать, если батник выдает кучу ошибок вида "Отказано в доступе" после каждой попытки удалить exe файл? Есть такая строка: D:\6\interstol>del D:\6\interstol\InterStol.exe 1>nul Что здесь обозначает 1>nul?
-------------------- (A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :) |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
>nul означает, что мы не хотим видеть сообщений.
Да и ничего страшного - окно-то скрыто ![]() |
|||
|
||||
Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 23 Всего: 51 |
Значит, или нет прав на запись, либо файл используется. сколько я не думал на тему обновлений, Идеальный вариант, судя по всему - делать Windows Installer инсталляции. Правда, для того, чтобы с ним разобраться придётся прошерстить тонны документации. ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |