====== Выполнение программы входа в домен (Logon Script) ====== :!: Данное решение тестировалось только на контроллере домена [[samba:samba|Samba]] **(стиль NT4)** и [[kixtart:kixtart|KiXtart 4.53]] ===== Расположение папок и файлов ===== Все папки и файлы должны быть размещены на ''Logon Server'', при установленном и настроенном домене это значение можно узнать из переменной окружения ''LogonServer''. В данном примере это значение равно ''Server'': ''\\Server\netlogon'' |**''bin''**|[[#bin|Папка с исполняемыми файлами]]| |**''connects''**|[[#connects|Папка с скриптами монтирования дисков и подключения принтеров]]| |**''files''**|[[#files|Папка с файлами]]| |**''users''**|[[#users|Папка с скриптами пользователей домена]]| |''Domain.ini''| [[#Domain.ini|Файл параметров для данного домена]]| |''Main.kix''|[[#Main.kix|Скрипт для вызова основного скрипта (заглушка)]]| |''Logon.kix''|[[#Logon.kix|Основной скрипт]]| |''NTconfig.POL''|[[windows_policy:windows_policy|Файл политики (Windows Policy)]]| ===== Установки пользователя ===== Для каждого пользователя домена нужно задать: User Environment profile Logon Script = users\kix32.exe ===== Main.kix ===== Call @LDRIVE +"\"+"Logon.kix" ===== Domain.ini ===== ==== Меню ==== Технология описана здесь: [[hierarchical_menu_system:hierarchical_menu_system|Иерархическая система меню]] {{:logon_script_kixtart:start_menu_windows.gif|Пример внешнего вида}} **Структура** ^''[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''|Имя подпрограммы для выполнения дополнительных действий| ==== Загрузка данных из файлов реестра ==== FIXME **Описание параметров** ^''[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" ==== Синхронизация файлов и папок ==== [[sync_files_windows:sync_files_windows|Синхронизация файлов (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" ===== Logon.kix ===== Основной скрипт {{:logon_script_kixtart:logon.kix|Logon.kix}} ==== Выполнение локально (без домена) ==== FIXME KIX32.EXE Logon.kix $MODE=1 $DOMAIN_INI=C:\Local.ini ===== bin ===== Папка с исполняемыми файлами robocopy.exe Shortcut.exe Для синхронизации используется [[robocopy:robocopy|RoboCopy]], а для создания ярлыков программа [[http://www.optimumx.com/download/Shortcut.zip|Shortcut]] ===== files ===== Папка с файлами ===== users ===== Скрипты пользователей (тип 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''. ===== connects ===== Скрипты типа Connection Решает задачи: * Назначения соответствия между буквой диска и сетевым ресурсом (Drive's connections) * Удаления соединений с сетевыми принтерами (Delete PRN's connections) * Добавления соединений с сетевыми принтерами (Add PRN's connections) * Установки принтера по умолчанию (Default PRN) * Назначение сетевых принтеров портам LPT1, LPT2 (Add PRN port connections) ;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 = "" {{tag>File_Server Samba Application_Launcher Linux MS_Windows}}