Вопрос № 120816: Доброго времени суток...Ситуация такая:Есть программа,база этой программы нахожиться на сервере, но кол-во копий программы, запущеных одновременно, на клиентских машинах ограничино.Подскажите пожалуйста,возможно ли написать программу которая запрещал...
Вопрос № 120.816
Доброго времени суток...Ситуация такая:Есть программа,база этой программы нахожиться на сервере, но кол-во копий программы, запущеных одновременно, на клиентских машинах ограничино.Подскажите пожалуйста,возможно ли написать программу которая запрещала запуск нескольких копий программы на одной клиентской машине??Если да то как?
Отправлен: 30.01.2008, 10:20
Вопрос задал: Moloh (статус: 1-ый класс)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 12)
Отвечает: Drbear
Здравствуйте, Moloh!
Если Вам надо запретить запуск нескольких копий своего приложения, то сходите сюда:
http://delphiworld.narod.ru/base/one_instance.html
там есть и другие варианты.
Ответ отправил: Drbear (статус: 6-ой класс)
Ответ отправлен: 30.01.2008, 10:32 Оценка за ответ: 5 Комментарий оценки: Спасибо.Основное есть-остальное надо искать.....
Отвечает: Проходящий Мимо
Здравствуйте, Moloh!
Предыдущий вариант ответа запрещает запуск нескольких копий программы на одном рабочем месте. Вам же, по тексту вопроса, нужно запретить запуск на разных машинах. Для етого можно создать в базе таблицу коннектов, в которую записывать имя клиентской машини и время. При подсоединении проверять колличество записей и сравнивать с максимальным разрешимым числом (или колличеством лицензий на подключение). Если колличество лицензий больше колличества коннектов, то создаем новую запись и, обязательно, время. В процессе
работы Вашего приложения периодически по таймеру, скажем раз в 1-5 минут, нужно обновлять время для коннекта в таблице. Зачем нужно время? Оно должно обезопасить клиентов от зависаний. Если клиент завис, можно отсортировать по времени последнего обновления, по прошествии часа Х коннект считаем зависшим и прощаемся с ним. При завершении работы удаляем свою запись и освобождаем одно подключение. Надеюсь, Вам понятен принцип алгоритма.
Удачи!
--------- Carpe diem!
Ответ отправил: Проходящий Мимо (статус: 10-ый класс)
Ответ отправлен: 30.01.2008, 11:35 Оценка за ответ: 5 Комментарий оценки: Спасибо.Принцип понятен.осталось попытаться это реализовать