Проверка на обновление

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Logan22, 17 Nov 2009.

  1. Logan22

    Logan22 Member

    Joined:
    11 Sep 2009
    Messages:
    115
    Likes Received:
    17
    Reputations:
    0
    Собственно подскажите как можно реализовать обновление приложения!
    желательно подробнее, я только обладаю начальными знаниями и лишь 1 книгу прочел с горем пополам.

    А теперь подробнее, допустим на форму добавляем кнопку, при нажатии будет выполняться соединение с узлом на котором будет висеть это приложение и пойдет автоматически скачка нового. =) а ток как это реализовать?)
     
  2. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    заюзай XML RPC

    удачи в начинаниях, приятного секса )))
     
    _________________________
    1 person likes this.
  3. Ra$cal

    Ra$cal Elder - Старейшина

    Joined:
    16 Aug 2006
    Messages:
    670
    Likes Received:
    185
    Reputations:
    78
    и этим все сказано...

    рано пока автообновление делать. да и гугл пока еще работает.
     
    1 person likes this.
  4. Logan22

    Logan22 Member

    Joined:
    11 Sep 2009
    Messages:
    115
    Likes Received:
    17
    Reputations:
    0
    Ну тогда так, на форму добавляем компонент button =)
    Так лучше? либо ещё закладку указать?)

    я ещё ваш весь сленг не понял, лишь по чучуть понимаю.
    Но мне уже хватило создать прогу на данный момент лучшую из маленького круга подобных.
    Ток вот бы ещё научиться в дельфи с базой данных MySQL, и вообще цены небыло =) А вообще опыт приходит со временем =) Но интерес проявляется лишь к тому чего ты не знаешь
     
    1 person likes this.
  5. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    вот тебе еще наколка ) SVN (правда сам не втыкал, но с репозиториями работал хех)

    Для начала прочитай

    А так я вижу свою небольшую систему обновления на основе XML RPC

    Сервер. PHP+MySQL (PHP XML RPC)
    база данных с примерно такой таблицей [ id | Major | Minor | Build | Link ]

    панелька администрирования с функций закачки на сервер новый версии программы с занесением её в базу.

    Проверка обновления сводится к посланию клиентом XML запроса поверх HTTP протокола. с определенной структурой... например

    Code:
    <?xml version="1.0"?>
     <methodCall>
       <methodName>examples.chackUpdate</methodName>
       <params>
         <param>
             <value><string>1.2.485</string></value>
         </param>
       </params>
     </methodCall>
    
    Сервер получает XML разбирает и видит что нужно выполнить функцию checkUpdate а текущая версия программы 1.2.485. Смотрим базу опа вышла новая версия!
    отправляем ответ

    Code:
     <?xml version="1.0"?>
     <methodResponse>
       <params>
         <param>
             <value><boolean>1</boolean></value>
             <value><string>http://site.com/soft_1.3.exe</string></value>
         </param>
       </params>
     </methodResponse>
    
    В программе клиенте делаем кнопочку или открываем IE с переданным адресом :)

    Если delphi то набери в поиске "delphi XML RPC" - вот нашел
     
    _________________________
    1 person likes this.
  6. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    А можно тупей... типа файл getver.php который просто текстом выводит номер версии
    программа его сверяет сама со своим и если не совпал запрашивает getver.php?link
    который пишет тупо ссылку для скачивания )))

    Но если реализовать на XML RPC в последующем можно дописать любой функционал с удобным интерфейсом, например какие нибудь новости от разработчика ) или там что-то типа онлайн справки или форума... в общем все что угодно
     
    _________________________
  7. Logan22

    Logan22 Member

    Joined:
    11 Sep 2009
    Messages:
    115
    Likes Received:
    17
    Reputations:
    0
    ох да это реальный секаз)
    Надеюсь смогу хоть както разобраться в этой поставленной себе задачи =) Спасбо тебе большое пойту тебе плюсЫ тЫкать)
     
  8. W!z@rD

    W!z@rD Борец за русский язык

    Joined:
    12 Feb 2006
    Messages:
    973
    Likes Received:
    290
    Reputations:
    43
    ClickOnce
     
  9. Ra$cal

    Ra$cal Elder - Старейшина

    Joined:
    16 Aug 2006
    Messages:
    670
    Likes Received:
    185
    Reputations:
    78
    помойму проще через wininet скачать файлик с сервера с указанием текущей версии. xml rpc имхо больно жирное решение для такой простой задачи.
     
  10. DeaD_MoroZ

    DeaD_MoroZ Banned

    Joined:
    3 Nov 2009
    Messages:
    102
    Likes Received:
    7
    Reputations:
    0
    помоему, это самый простой и интересный вариант
     
  11. Jingo Bo

    Jingo Bo Member

    Joined:
    25 Oct 2009
    Messages:
    368
    Likes Received:
    51
    Reputations:
    7
    Я у ся в проге сделал всё проще не куда(и тебе советую) :
    На сервере хранится файл текстовый, допустим version.txt
    В нём пишешь :
    В первой строчке указана версия и дата обновления, далше идёт камент обновления и потом названия файлов к обновлению(на сервере они называются так же). Прога загружает этот файл, а потом и те файлы какие указаны с заменой.
    Конечно можно ещё добавить каке нить команды и опции для каждого файла, к примеру
    file1.txt;no_rewrite
    Типа если файл уже есть, то его не обновлять.
    А загрузку файлов делаю через Wininet. Потому что впадлу через WinSock писать, это тупо если уже есть соответствующий API.
    Даже сраный XML не нужен, потому что он тут вообще не нужен. Если расширенный файл обновлений, то его формат лучще придумать самому, будет короче и прощё(для себя). А XML это стандартное решение(потому и жирное).

    Gar|k У тебя ооп-эшный фимоз. Предлагаешь блоху молотком бить.:)
     
    1 person likes this.