Данное решение тестировалось только на контроллере домена Samba (стиль NT4) и KiXtart 4.53
Все папки и файлы должны быть размещены на Logon Server
, при установленном и настроенном домене это значение можно узнать из переменной окружения LogonServer
. В данном примере это значение равно Server
:
\\Server\netlogon
bin | Папка с исполняемыми файлами |
connects | Папка с скриптами монтирования дисков и подключения принтеров |
files | Папка с файлами |
users | Папка с скриптами пользователей домена |
Domain.ini | Файл параметров для данного домена |
Main.kix | Скрипт для вызова основного скрипта (заглушка) |
Logon.kix | Основной скрипт |
NTconfig.POL | Файл политики (Windows Policy) |
Для каждого пользователя домена нужно задать:
User Environment profile Logon Script = users\kix32.exe
Технология описана здесь: Иерархическая система меню
Структура
[Menu] | Уровень 1 меню и файлы | Уровень 2 меню и файлы | Уровень 3 только файлы |
---|---|---|---|
[File_1] | |||
[Menu_1] | |||
[File_1_1] | |||
[Menu_1_1] | |||
[File_1_1_1] |
Описание параметров
[Menu] | Верхний уровень |
---|---|
Menu_Number | Количество меню уровня 1 |
File_Number | Количество файлов уровня 1 |
[Menu_1] | Меню уровня 1 |
Name | Имя меню |
File_Number | Количество файлов уровня 2 |
Menu_Number | Количество меню уровня 2 |
[Menu_1_1] | Меню уровня 2 |
File_Number | Количество файлов уровня 3 |
[File_1] | Файл (все уровни) |
NAME | Имя ярлыка |
APPL | Имя файла программы (с полным путем) |
ICON | Имя файла иконки (с полным путем) |
DIR | Рабочая папка, без завершающего слеша (\ ) |
ARG | Параметры запуска |
RSTL | Способ отображения окна объекта при открытии ярлыка:1 стандартное окно3 развернутое окно (полноэкранный режим)7 свернутое окно (кнопка на панели задач) |
DSCR | Описание |
USR_GRP | Имя группы доступа, * = любая группа |
SUB_PRG | Имя подпрограммы для выполнения дополнительных действий |
Описание параметров
[Registry] | Верхний уровень |
---|---|
Registry_Number | Количество файлов реестра |
[Registry_1] | Меню уровня 1 |
Reg_File | Имя файла, относительно \\Server\netlogon ) |
USR_GRP | Имя группы доступа, * = любая группа |
Пример
[Registry] Registry_Number=2 [Registry_1] Reg_File="files\1.reg" USR_GRP="Domain Users" [Registry_2] Reg_File="files\1.reg" USR_GRP="Domain Users"
Синхронизация файлов (Windows)
[Programs] Programs_LOCAL="C:\Programs" Programs_ROOT="\\Server\Programs\" USR_GRP="Programs_R" VERSION_FILE="Version.txt" pc01=01 pc02=01 Admin=All
[Domain] TIME_SERVER="\\Server" USERHOME="\\Server\UserHome" USR_GRP_OneS77 = "1C_R" [ClientBank] USR_GRP="BC_R" SHARE="\\Server\BC"
Основной скрипт
KIX32.EXE Logon.kix $MODE=1 $DOMAIN_INI=C:\Local.ini
Папка с исполняемыми файлами
robocopy.exe Shortcut.exe
Для синхронизации используется RoboCopy, а для создания ярлыков программа Shortcut
Папка с файлами
Скрипты пользователей (тип User)
Запускаемые файлы и библиотеки KiXtart
KIX32.EXE KIXTART.EXE kx16.dll KX32.dll KX95.dll kxrpc.exe WKIX32.EXE
Пример файла:
$SCRIPT_1 = "\connects\Common.kix" $SCRIPT_2 = "\connects\user.kix" $SCRIPT_3 = "" $SCRIPT_4 = "" $SCRIPT_5 = "" $SCRIPT_6 = "" $SCRIPT_7 = "" $SCRIPT_8 = "" Call @LDRIVE +"\"+"Main.kix"
В скрипте устанавливаются переменные окружения для KiXtart
, значения которых - названия файлов скриптов, которые должны быть выполнены.
В данной версии используются переменные с $SCRIPT_1
по $SCRIPT_8
.
Скрипты типа Connection
Решает задачи:
;Drive's connections $SCR_TYPE = "1" ;1 - Run SET_CONNECTIONS $DRV_D = "" $DRV_E = "" $DRV_F = "" $DRV_G = "" $DRV_H = "" $DRV_I = "" $DRV_J = "" $DRV_K = "" $DRV_L = "" $DRV_M = "" $DRV_N = "" $DRV_O = "" $DRV_P = "" $DRV_Q = "" $DRV_R = "" $DRV_S = "" $DRV_T = "" $DRV_U = "" $DRV_V = "" $DRV_W = "" $DRV_X = "" $DRV_Y = "" $DRV_Z = "" ;Delete PRN's connections $PRN_DEL_1 = "" $PRN_DEL_2 = "" $PRN_DEL_3 = "" $PRN_DEL_4 = "" $PRN_DEL_5 = "" $PRN_DEL_6 = "" $PRN_DEL_7 = "" $PRN_DEL_8 = "" ;Add PRN's connections $PRN_1 = "" $PRN_2 = "" $PRN_3 = "" $PRN_4 = "" $PRN_5 = "" $PRN_6 = "" $PRN_7 = "" $PRN_8 = "" ;Default PRN $PRN_DEF = "" ;Add PRN port connections $LPT1 = "" $LPT2 = ""