Сервер обновлений

Здесь можно оставить пожелание относительно функций, которых в программе нет, но которые вам хотелось бы в ней видеть.

Модератор: motyara

Аватара пользователя
ComeOn
Охотник за багами
Сообщения: 57
Зарегистрирован: Ср апр 09, 2008 5:22 pm
Откуда: Калуга

Сервер обновлений

Сообщение ComeOn »

Внедряю UC на предприятии, но бегать и предупреждать всех об обновлениях не вариант. При этом можно было бы наплевать, но все же, согласитесь, прога не закончена, поэтому обновлений ждем. Предлагаю сделать возможность формирования локального сервера обновлений. В сети есть папка, куда я складываю дистрибутив и файлик с информацией о текущей версии. Путь к папке указывается в настройках. Может быть случай и частный, но было б удобно и оригинально - такого ни у кого нет... :P
Изображение
Аватара пользователя
kostik-aaron
Охотник за багами
Сообщения: 211
Зарегистрирован: Пт фев 15, 2008 12:34 pm
Откуда: Зеленоград

Re: Сервер обновлений

Сообщение kostik-aaron »

да, действительно, всё, что может использоваться корпоративно, также должно уметь и обновляться корпоративно. Идею поддерживаю. Админам нашим про UC скажу. Может, тоже на предприятии начнут внедрять его ) Нефиг пользовать палёные TC.
Настоящий инженер учится всю жизнь!
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

Мероприятие производится так: на сервере, доступном для всех компьютеров сети, находится каталог с программой, в который программа установлена через инсталлятор, а не распакована через zip-архив, соответственно в самом каталоге с установленной программой должен находиться инсталляционный файл uncomsetup.exe, в случае если в этот каталог установлена новая версия программы (и соответственно там появился новый инсталляционный файл) все компьютеры в этом общедоступном каталоге это видят и запускают инсталлятор в режиме /VERYSILENT и программа устанавливается из сетевого каталога в каталог каждого отдельного компьютера. Соответственно, таким образом реализуется система единого лицензионного ключа и заодно автоматического обновления. Каждый компьютер в сети должен знать этот общедоступный каталог, это указывается в настройках на вкладке "Совместное использование" в строке "Каталог с лицензионным ключом".
Аватара пользователя
kostik-aaron
Охотник за багами
Сообщения: 211
Зарегистрирован: Пт фев 15, 2008 12:34 pm
Откуда: Зеленоград

Сообщение kostik-aaron »

Max Diesel писал(а):в случае если в этот каталог установлена новая версия программы (и соответственно там появился новый инсталляционный файл) все компьютеры в этом общедоступном каталоге это видят и запускают инсталлятор в режиме /VERYSILENT
Я правильно понимаю, что UC при обновлении ключа сам будет заодно проверять и файл uncomsetup.exe? потому как иначе не вижу, где тут автоматическое обновление программы.
Настоящий инженер учится всю жизнь!
Аватара пользователя
ComeOn
Охотник за багами
Сообщения: 57
Зарегистрирован: Ср апр 09, 2008 5:22 pm
Откуда: Калуга

Re: Сервер обновлений

Сообщение ComeOn »

А не проще реализовать как я предложил - с простым текстовым файлом? Или как это на официальном сервер происходит? Или тогда поподробнее расскажи, как чего класть, для тех кто на лесопилке работает... :P
Изображение
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

kostik-aaron писал(а):Я правильно понимаю, что UC при обновлении ключа сам будет заодно проверять и файл uncomsetup.exe?
Именно так.
ComeOn писал(а):А не проще реализовать как я предложил - с простым текстовым файлом? Или как это на официальном сервер происходит? Или тогда поподробнее расскажи, как чего класть, для тех кто на лесопилке работает...
Подозреваю что не проще... да и более подробного варианта описания работы с этой системой, чем вариант парой сообщений выше, я и не смогу расписать.
Аватара пользователя
ComeOn
Охотник за багами
Сообщения: 57
Зарегистрирован: Ср апр 09, 2008 5:22 pm
Откуда: Калуга

Re: Сервер обновлений

Сообщение ComeOn »

Прошу прощения за возможный флуд, но зачем тогда установка в эту открытую папку? Ведь, как я понял проверяется только установочный файл и ключ? Или чего-то я не допонял...
Изображение
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

Я исходил из того, что если программа в этот каталог установлена, то в нем проще появиться обновленному ключу...
Аватара пользователя
ComeOn
Охотник за багами
Сообщения: 57
Зарегистрирован: Ср апр 09, 2008 5:22 pm
Откуда: Калуга

Re: Сервер обновлений

Сообщение ComeOn »

Все получилось. Извини, не сразу понял, что запуск инсталлятора в режиме /VERYSILENT означает копирование обновленных файлов из удаленного каталога. Сразу замечания:
1) Проверка обновления происходит при запуске коммандера, но при нажатии ОК он все равно запускает необновленный локальный файл и в результате не может его обновить - то есть запуск exe-шника надо блокировать.
2) Почему сообщение про обновление выводится по аглицки? Язык то Русский. Просто все равно звонят, и спрашивают, что он им пишет. Мелочь, но неприятно...
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

ComeOn писал(а):не сразу понял, что запуск инсталлятора в режиме /VERYSILENT означает копирование обновленных файлов из удаленного каталога.
Вообще-то это не означает копирования обновленных файлов... это означает "произвести инсталляцию программы без каких-либо вопросов и сообщений", кроме, разве что, сообщения о необходимости выключить программу...
ComeOn писал(а):1) Проверка обновления происходит при запуске коммандера, но при нажатии ОК он все равно запускает необновленный локальный файл и в результате не может его обновить - то есть запуск exe-шника надо блокировать.
Не совсем понял про что идет речь...
ComeOn писал(а):2) Почему сообщение про обновление выводится по аглицки? Язык то Русский.
Подозреваю что сложновато объяснить причину... но если кратко, то языковой файл подгружается гораздо ниже по коду (то есть позже), нежели проверяется наличие обновленной версии в удаленном каталоге. Подгрузить его выше нельзя, так как он подгружается лишь после загрузки переменных из ini-файла... но их тоже выше подгрузить нельзя. Может позже я найду несложный способ сделать чтобы сообщение было-таки на национальном языке, но пока что дело до этого еще не дошло...
Аватара пользователя
ComeOn
Охотник за багами
Сообщения: 57
Зарегистрирован: Ср апр 09, 2008 5:22 pm
Откуда: Калуга

Re:

Сообщение ComeOn »

ComeOn писал(а):1) Проверка обновления происходит при запуске коммандера, но при нажатии ОК он все равно запускает необновленный локальный файл и в результате не может его обновить - то есть запуск exe-шника надо блокировать.
Не совсем понял про что идет речь...
Так вот о том и идет
это означает "произвести инсталляцию программы без каких-либо вопросов и сообщений", кроме, разве что, сообщения о необходимости выключить программу...
Не проще программе совсем не дать запуститься, если она увидела обновление - все равно ее гасить придется? А, учитывая, что там все сообщения по буржуйски, то участие сисадмина все равно нужно. А я с помощью автоматического обновления пытаюсь от этого уйти. Чтоб само все обновлялось...
Изображение
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

Вообще-то не проще... то есть проверка наличия новой версии в удаленном каталоге производится при FormCreate, и даже если при этом через Application->Terminate() программа была отправлена на завершение, то тем не менее выполнение добирается до FormShow. Впрочем, я опять-таки поменял работу этой функции и теперь (от 0.94 бета-4) вместо вопроса "Update program from remote directory?" будет выдаваться сообщение "Обнаружена новая версия программы, сейчас будет произведено обновление" (и кнопка "ОК" вместо "Да/Нет"). Правда сообщение будет на каждом конкретном языке лишь со следующей версии, так как к версии 0.94 языковые файлы уже готовы.
Аватара пользователя
ComeOn
Охотник за багами
Сообщения: 57
Зарегистрирован: Ср апр 09, 2008 5:22 pm
Откуда: Калуга

Re: Сервер обновлений

Сообщение ComeOn »

Ну и ладно. Можно сделать обновление отдельным модулем, который запускается первым, а потом запускает основной exe-шник. Но это переделка. Забей и кинь силы на FS плугины :). Вопрос можно закрывать.
Изображение
Аватара пользователя
Zero
Сообщения: 8
Зарегистрирован: Чт янв 24, 2008 2:58 pm

Re: Сервер обновлений

Сообщение Zero »

А я так и непонял, пачему если в настройках указан путь к ключу, то почему если заходим в управление лицензией-обновить-автоматически он пытается залезть в инет на сервер
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

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