Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > UpdateRing


Автор: Nexia 29.4.2014, 20:56
Модуль проверки наличия обновлений в сети через http
версия 0.9

Алгоритм.
Код загружает по заданному адресу текстовый файл в виде строки (кодировка ANSI), сравнивает номер версии, содержащейся в строке, с номером из параметра и выдает результат:
    upNo - обновлений нет
    upNoRing - нет соединения
    upYes - есть обновление
    upCancel - отменен запрос
    
Код выполняется в отдельном потоке, но функция обратного вызова выполняется в потоке, вызвавшем код.
    
Пример сравнения:
2.3.5 > 2.3.49
444.01 > 444

Запуск проверки:
Код

procedure UpdateRinging(const UpdateURLring: PWideChar; const NowVersion: PWideChar; PointerResultProcedure: TPointerResultProcedure; TimeOut: LongInt);

  UpdateURLring - (например 'http://mysite.net/file.txt') адрес файла со строкой, являющейся новмером самой последней версии.
  NowVersion - (например '2.3.5') настоящая версия программы.
  PointerResultProcedure - (например @MyProc) указатель на процедуру, которая будет вызвана по завершении операции.
  TimeOut - число секунд больше или равно 1. Время, после которого прекратится запрос к сайту, если нет результата.
  
Код

procedure CancelUpdateRinging;
 - отмена операции.


UpdateRing.pas - сам модуль.
Демонстрационный проект прилагается.

Автор: ZBugz 30.4.2014, 05:59
Ошибся разделом http://forum.vingrad.ru/forum/topic-21411/view-all.html

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)