![]() |
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум | ![]() |
![]() |
Л и с о в о д ы в с е х с т р а н, о б ъ е д и н я й т е с ь !!! |
Интересно как отключают пользователей? | |||
---|---|---|---|
Kris_ Сообщений: 413 |
Еще вопрос.
Вот в программе Парус, написанной на фоксе, можно из главного модуля отключить любого клиента. Просто вывешивается у него окошко, что через n минут вас отключат, и шлеп - программа закрывается ![]() Просто интересно стало - как это делается? ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
vlad Сообщений: 850 Откуда: Запорожье |
|
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Анонимный пользователь Гость |
создаешь таблицу с заданиями
ну например структура такая (user c(20),script m ....) индекс user задания бывают разные (вывод ссобщения, выполнение скрипта, завершение, обновление .... ) на приложение вешаешь таймер и он постоянно смотрит seek user in ... if foun(...) exescri(....script) endif user можешь идентифицировать как sys(0) ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
AlexSSS Автор Сообщений: 6110 Откуда: Tallinn, Estonia |
главное не забудь, чтобы таймер работал с управляющей таблицей в приватной датасессии.
еще одну вещь, которую я у себя сделал, это закрывание всех програм у пользователей (с возможностью выбрасывания из программы), если он долго ничего не делал в проге. Днем два часа бездействия - закрытие всех программ. Ночью час бездействия - закрытие програм и полный выход. ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Kris_ Сообщений: 413 |
alex11100 писал(а):
Цитата:Получается управляющий модуль должен строчку из этой таблицы удалить, а остальное делает клиентская программа? (как закрыть прогу я поняла) ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Анонимный пользователь Гость |
да после исполнения скрипта,
если все нормально удаляешь, а еще лучше нет ! из ExecScript возвращай чего то если все правильно сделано если к примеру истина вернулась ставишь отметку, что сделала (к примеру поле isdone ) repl alias.done with .t. да и время исполнения можешь хранить ну придумай сама - с фантазией можно горы свернуть создай индекс с опцией for done=.f. - чтобы в заданиях не было видно уже выполненых к примеру скрипт для сообщения "=messagebox('привет')" для закрытия "cancel"+chr(13)+"+chr(13)+"clear all""+chr(13)+"set sysmenu to default"+"+chr(13)+"set procedure to""+chr(13)+"set library to""+chr(13)+"set classlib to"+"+chr(13)+"use .... orde ...."+"+chr(13)+"seek sys(0)"+"if foun(...)" ... ставишь отметку об исполнении ... "quit" ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Kris_ Сообщений: 413 |
alex11100 писал(а):
Цитата:я уже потихоньку начинаю понимать твои шифровки ![]() спасибо за идеи, попробую ![]() ------------------ ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Анонимный пользователь Гость |
логика - она наука тонкая
понимат нуна ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Kris_ Сообщений: 413 |
![]() учимся-учимся.. ![]() ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
AlexSSS Автор Сообщений: 6110 Откуда: Tallinn, Estonia |
можно реализовать сложную систему отключения пользователей или дистанционного выполнения на их компах каких-то операций. Но стоит задуматься, так ли реально нужны все эти усложнения?
Лично для себя я уже пришел к выводу, что это не надо и подобную систему лучше сделать как можно проще. Очень простой вариант - таймер на всех компах просматривает всего одну запись в таблице. Таблица locked L,; message M,; showmessage L в message можно засунуть сообщение, которое прога с таймером выводит на экран пользователей, если showmessage=.t. Например, "Сегодня с 16:00 до 17:00 программа работать не будет". При установке locked=.t. на клиентах запускается обратный отчет на 5 минут с выводом времени на экран и появляется сообщение, что через указанное время программа будет завершена. Через указанное время программа завершается. При запуске программы тоже запускается проверка locked. При locked=.t. выдается сообщение, что база временно заблокирована. Здесь совмещены функции оповещения и завершения работы. Причем оповещением можно пользоваться и без завершения программы. ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Kris_ Сообщений: 413 |
ну ..по моему alex11100 аналогичный вариант и описывал.. приблизительно, но мысль та же.
![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
AlexSSS Автор Сообщений: 6110 Откуда: Tallinn, Estonia |
Да, просто у него более сложный вариант.
Я как раз писал об том, что еще вопрос, надо ли все это в реальной работе. Впрочем, это каждый решает сам в приложении к конкретной задаче У меня есть работающая программа, где я могу послать конкретным пользователям конкретные сообщения или заставить выполнить их конкретные действия. Например, всем выкинуться из программы, а на одном компе запустить программу переиндексации. Когда писал эту прогу - да, этими возможностями пользовался. Прошло больше года, сейчас я даже толком не помню, как этим всем управлять, максимум чем пользуюсь, это выкинуть всех из фокса. ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Анонимный пользователь Гость |
нуна, даже очень
дажи в клиент-сервере ушел юзер домой, закрыл кабинет а коннект оставил чего делать провода рубить?? на сервер лезть нет! проще его дистанционно вырубить да сообщение послать тоже хорошо "Эй! через 5 минут не выгрузишься, я тебя так выгружу..." о, как ладненько и класненько AlexSSS ![]() да, скрипт лучше будет, можно апдейты делать и т.д. ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
AlexSSS Автор Сообщений: 6110 Откуда: Tallinn, Estonia |
> ушел юзер домой, закрыл кабинет
> а коннект оставил об таком варианте я писал выше - в рабочее время после двух часов бездействия, в вечернее-ночное время после часа бездействия в программе, та же прога с таймером все закроет сама. Безо всякого моего участия ;o) ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Анонимный пользователь Гость |
а мне вот сейчас нуно
у меня дома семеро по лавкам , а мне БД обслужить нужно поле добавить ... да мало ли чего а комнатка опечатана, и сервак закрыт и доступа у меня нет дистанционного к серваку и к компу юзера, а комп у юзера включен и приложение болтается а я ему базу задание с шутдауном и через 5 сек все ок ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Hel!Riser Сообщений: 10448 Откуда: Нижний Новгород |
а ежели дождь во время усушки!? (с)
![]() ------------------ Осторожно - глисты! ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Анонимный пользователь Гость |
бум сухари сушить
![]() ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
AlexSSS Автор Сообщений: 6110 Откуда: Tallinn, Estonia |
> а я ему базу задание с шутдауном и через 5 сек все ок
ага, а в это время еще пять человек в базу залезут ;o) и будешь каждого поодиночке отстреливать или пользователь вернется и полезет в базу, а ты еще обновление базы не закончил. ладно, проехали. Наверняка у тебя эти варианты тоже предусмотрены. ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Анонимный пользователь Гость |
а как-же
для этого базука под столом ну в БД они у меня не полезут - я им хвост выдерну ![]() |
||
Re: Интересно как отключают пользователей? | |||
---|---|---|---|
Kris_ Сообщений: 413 |
AlexSSS писал(а):
Цитата:как подумаешь об ентом, сразу хочется застрелиться [sm058] ![]() |
||
© 2000-2019 Fox Club  |