Расширение функций LockWin за счет внешних программ

В программе LockWin имеется возможность расширения ее функций за счет вызова внешних программ (или скриптов) в различные моменты времени. Для описания этих вызовов используется окно "Запуск дополнительных программ":

В левой части этого окна находится список "точек вызова" внешних программ.  В правой части окна выводится список строк, описывающих запуска программ (скриптов) для каждой из "точек вызова".  При помощи кнопки "Выполнить" можно запустить последовательность вызова программ выбранной "точки" для проверки.  При помощи кнопки "Включить/выключить" можно временно отменить выполнение заданной "точки".

Список точек вызова не предназначен для редактирования и содержит все точки, в которых можно запускать внешние программы на данный момент:

  • "Запуск программы" - Сразу после запуска программы LockWin (аналог автозагрузки Windows). В этой точке удобно запускать программы, которые должны постоянно работать на компьютере - типа драйверов устройств и "виртуальных CDROM-ов".
  • "Блокировка" - Сразу после блокировки (остановки сеанса) на компьютере. Код в этой точке выполняется также после перезагрузки компьютера если он находится в заблокированном состоянии. Здесь могут запускаться программы, которые предназначены для дополнительной блокировки или должны работать на заблокированном компьютере (например, вывод рекламы о клубе).
  • "Разблокировка" - Сразу после разблокировки (запуска сеанса)
  • "Включение интернета" - Выполняется по команде "Включить интернет" из программы Locker. Обычно это включение сеанса типа "интернет"  и при нажатии на кнопку "Интернет" в панели управления программы Locker.  Здесь могут запускаться программы (скрипты) предназначенные для подключения компьютера к интернету.
  • "Отключение интернета" - Выполняется по команде "Выключить интернет" из программы Locker. Обычно это выключение сеанса типа "интернет"; момент когда заканчивается "Лимит трафика" сеанса и при нажатии на кнопку "Интернет" в панели управления программы Locker. Здесь могут запускаться программы (скрипты) отключающие компьютер от интернета.
  • "Команда LogOFF"  - Выполняется в момент остановки сеанса, если в настройках программы LockWin включен блокировка "LogOff".  Отсюда можно запускать программу, предназначенную для выполнения LockOff-а и последующей автоматической регистрации пользователя.  Если даже в этой точке ничего не запускать, то все равно будет выполняться внутренняя функция LogOff программы LockWin.
  • "Команда "Перезагрузка"  - Выполняется в момент остановки сеанса, если в настройках программы LockWin включен блокировка "Перезагрузка", а также по команде Locker-a "Перезагрузка" и при нажатии кнопки "Перезагрузка" на Рабочем столе LockWin-a. Отсюда можно запускать программу, предназначенную для выполнения функции перезагрузки компьютера, если вас почему-либо не устраивает встроенная в программу функция перезагрузки.
  • "Команда "Выключение компьютера" - Выполняется в момент остановки сеанса, если в настройках программы LockWin включен блокировка "Выключение", а также по команде Locker-a "Выключение" и при нажатии кнопки "Выключение" на Рабочем столе LockWin-a. Отсюда можно запускать программу, предназначенную для выполнения функции выключения компьютера, если вас почему-либо не устраивает встроенная в программу функция выключения.
  • "Предупреждение об окончании" - Выполняется за несколько минут до окончания сеанса (точное время настраивается на вкладке "Сообщения" окна настройки. Отсюда можно запускать программу вывода предупреждения пользователю об окончании сеанса.  Самый простой способ вывода сообщения "поверх" всех программ, это воспользоваться утилитой Mess.exe, которая есть в комплекте поставки программы LockWin. При этом надо помнить, что большинство параметров вывода сообщения (шрифт, цвет, размер, координаты, длительность) находятся в файле Trev.ini и только сам текст сообщения можно передавать ей в командной строке.
  • "Раз в минуту в заблокированном состоянии" - Выполняется раз в минуту, когда компьютер находится в заблокированном состоянии.
  • "Раз в минуту в разблокированном состоянии" - Выполняется раз в минуту, когда компьютер находится в разблокированном состоянии. В этой точке можно, например, выводить сообщение об оставшемся времени "поверх" всех программ.
  • "Раз в секунду в заблокированном состоянии" - Выполняется раз в секунду, когда компьютер находится в заблокированном состоянии. Сюда можно добавить дополнительную внешнюю процедуру блокировки.
  • "Раз в секунду в разблокированном состоянии" - Выполняется раз в секунду, когда компьютер находится в разблокированном состоянии.  Можно хоть "бегущую строку " выводить!
  • "После блокировки" - Через некоторое время после блокировки компьютера. Время задержки надо указать в поле "Задержка после блокировки" на вкладке "Программы" окна настройки (в формате чч:мм:сс).

Если вам нужны еще какие-либо другие точки вызова программ - пишите - и мы их постараемся добавить...

Для каждой точки вызова можно описать несколько запускаемых программ при помощи следующей формы:

  • "Точка вставки" - Номер точки вставки вызова программ
  • "Номер строки"   - Порядковый номер строки, предназначенный для упорядочивания последовательности вызова программ для данной точки вызова.
  • "Выражение"      - Условие запуска программы. Значение этого выражения должно быть не равным нулю (Истина), чтобы программа запускалась. В выражении можно использовать операторы и функции языка Clarion а также ряд внутренних параметров программы LockWin.
  • "Программа"        - Собственно вызываемая программа (или программа - интерпретатор скриптов)
  • "Параметры"       - Параметры командной строки вызова программы или файл скрипта, передаваемый программе, которая будет выполнять этот скрипт
  • "Описание"           - Описание действий, выполняемых программой (комментарий)
  • "В скрытом окне"   - Признак запуска программы в скрытом (невидимом) окне
  • "Минимизировать" - Запускать программу в "свернутом" окне
  • "Не выполнять"      - Признак временного отключения выполнения строки. Отключить строку можно также поставив в ее начале символ ";" или "!" или "rem".

В полях "Выражение" и  "Параметры" можно использовать ряд внутренних переменных программы программы LockWin в виде следующих макросов:

  • %active%     - Признак "Сеанс идет" (1 - идет, 0 - не идет)
  • %pause%     - Признак "Пауза"
  • %inet%         - Признак "Интернет включен"
  • %serv%        - Код услуги
  • %comp%      - Код компьютера
  • %compip%   - IP-адрес компьютера
  • %user%        - Код пользователя
  • %usernane% - Ник пользователя
  • %sess%         - Номер сеанса
  • %time%         - Время сеанса в минутах
  • %begtime%   - Время начала сеанса (мин)
  • %endtime%   - Время окончания сеанса (мин)
  • %timer%       - Время "Прошло" (в формате чч:мм)
  • %ostat%        - Время "Осталось" (в формате чч:мм)
  • %summ%       - Сумма потраченных денег
  • %traffic%       - Скачено (Кбайт)
  • %admname% - Код сотрудника
  • %sek%           - Счетчик секунд работы программы
  • %min%           - Счетчик минут работы программы
  • %menugroup% - Код группы программы (для вызова программ)
  • %menuid%        - Код программы Пользовательского меню (для вызова программ)

Если нужны будут еще какие-нибудь внутренние переменные или точки выполнения программ, то мы их постараемся добавить....


Пример сохранения "конфигов" пользователя на сервере

1) Точка "Разблокировка":
    Программа: XCopy.exe  
    Параметры: \\Server\Users\%username% d:\Games\CS\config.cfg

    Описание:  Копирует "конфиг" из расшаренного на сервере каталога \\Server\Users\ в каталог Counter Strike на этом компьютере. В качестве имени файла используется ник пользователя (%username%)

2)  Точка "Блокировка":
    Программа: XCopy.exe  
    Параметры: d:\Games\CS\config.cfg \\Server\Users\%username% 
    Описание: Копирует "конфиг" из каталога Counter Strike в каталог на сервере \\Server\Users\


Пример включения и выключения доступа к интернету при помощи утилиты Windows ARP.exe

С помощью утилиты ARP.exe, которая есть в составе Windows, можно управлять таблицей соответствия IP-адресов MAC-адресам сетевых плат. Этот способ основан на отключении связи с компьютером, выполняющим функции шлюза в интернет.  Соответственно, у этого способа есть ограничение, состоящее в том, что данный компьютер (шлюз) должен использоваться клиентскими компьютерами только для  выхода в интернет и больше ни для каких других целей. То есть его нельзя использовать ни в качестве файл севера, ни как рабочее место администратора - ничего кроме выхода в интернет и подсчета интернет трафика. Но зато это может быть совсем не "могучий" компьютер и работать под управлением любой операционной системы. Более того, этот компьютер может находиться даже не у вас в клубе - а у вашего провайдера интернета :)

В этом примере: 192.168.0.100 - IP-адрес сетевой карточки компьютера-шлюза, 00-03-47-99-78-4f - MAC-адрес сетевой карточки компьютера-шлюза.

1) Точка "Включение интернета":
    Программа: Arp.exe  
    Параметры: -s  192.168.0.100  00-03-47-99-78-4f

    Описание: Связывает с IP-адрес шлюза в интернет с MAC-адресом сетевой карточки компьютера-шлюза

2)  Точка "Отключение интернета": 
    Программа: Arp.exe  
    Параметры: -s  192.168.0.100  00-00-00-00-00-00
    Описание:  Связывает IP-адрес шлюза с несуществующим MAC-адресом сетевой карточки 

3)  Точка "Запуск программы":
    Программа: Restart.bat 
    Параметры: %inet%
    Описание:  В зависимости от состояния признака "Интернет включен" ( %inet%) включает или выключает связь с шлюзом.

Командный файл Restart.bat должен содержать следующее:

if %1==1 then goto PuskTraf
Arp.exe -s 192.168.0.100 00-00-00-00-00-00
goto End
:PuskTraf
Arp.exe -s 192.168.0.100 00-03-47-99-78-4f
:End 

Для надежности, этот же Restart.bat можно запускать каждую минуту как в разблокированном так и в заблокированном состоянии компьютера.

Спасибо за идею этого способа управления Локтионову Алексею из московского клуба Another Worlds Club!

×
Скачать "Прокат-Эксперт"

Чтобы скачать программу "Прокат-Эксперт" нужно зарегистрироваться: