Проверить наличие обновлений - PullRequest
0 голосов
/ 07 января 2010

Я разрабатываю приложение на Lazarus, которое должно проверять, есть ли новая версия XML-файла на каждом Form_Create.

Как я могу это сделать?

Ответы [ 2 ]

2 голосов
/ 07 января 2010

Я использовал библиотеку synapse в прошлом для выполнения такой обработки. В основном включите httpsend в ваше предложение использования, а затем вызовите httpgetbinary(url,xmlstream), чтобы получить поток, содержащий ресурс. Я бы не стал делать это в OnCreate, поскольку для извлечения ресурса может потребоваться некоторое время. Вам лучше обслужить, разместив это в другом потоке, который может сделать синхронизированный обратный вызов к форме для включения обновлений или установить флаг приложения. Это похоже на то, как браузер Chrome отображает обновления на странице about, поток отображается при отображении формы, чтобы проверить, есть ли обновления, и когда поток завершает обновление GUI ... это позволяет другим задачам (например, небольшая анимация или возможность для пользователя закрыть диалог).

Synapse - это не библиотека визуальных компонентов, это библиотека блокирующих функций, охватывающих большинство распространенных интернет-протоколов.

1 голос
/ 07 января 2010

Вам нужно прочитать о FPC Networking , lNet выглядит особенно полезным для этой задачи.

...