Участник
Регистрация: 28.11.2005
Адрес: Москва
|
Цитата:
Сообщение от Roman777
Правильно ли я понимаю, что необходимо предварительно установить только на одну машину клиента с необходимым SP и KR, скопировать получившийся Bin в директорию Bin для батника?
Да, но если быть точным, я брал весь каталог с установленным клиентом (стандартные каталоги appl, bin, log, share, std, из которых файлы только в bin и share), а также файлы шрифтов для штрих-кодов, которые ставятся с Аксаптой, и рассовывал это по указанным каталогам.
Цитата:
Сообщение от Roman777
Можно немного поподробнее о запуске этого скрипта?
Во-первых, надо поставить указанные утилиты, в частности, psexec используется для удаленого запуска regsvr32 (регистрация компонент OCX) и regedit (импорт настроек подстановки шрифтов), а сам батник сильно завязан на функции, присутствующие в 4nt. В начале скрипта настраиваются переменные, указывающие на исходные и конечные каталоги:- __src_axapta - каталог, содержащий подкаталог client, в котором должны лежать файлы клиента Axapta;
- __dst_axapta - каталог, куда будут копироваться файлы клиента Axapta; по умолчанию задан в виде c$\axapta, т.е. с использованием стандартной шары c$ (корень диска c:\); вместе с netbios-именем клиентского компа должен давать полный unc-путь, типа \\host\c$\axapta;
- __src_files - каталог, содержащий вспомогательные файлы (в данном случае файл 2000.reg, ярлычок Axapta.lnk и шрифты в подкаталоге %__src_files%\fonts); этот путь берется по умолчанию из пути, откуда запущен батник, и настраивать его не надо.
- __src_ax32 - путь к файлу ax32.exe на локальной машине, используемый для определения "древности" версии уже установленного на удаленной машине клиента по сравнению с устанавливаемой версией - если, конечно, будет обнаружен уже установленный клиент; настраивается автоматом с использованием __src_axapta.
- __client_dir - каталог, куда ставится клиент, в том виде, как он будет выглядеть на машине клиента, например, c:\axapta; предполагается, что __dst_axapta указывается через стандартные шары дисков, поэтому значение __client_dir автоматом создается из __dst_axapta путем замены "$" на ":".
Таким образом, в батнике в общем случае надо настроить только путь __src_axapta. После запуска запрашивается netbios-имя или ip клиентской машины, проверяется ее доступность по сети и доступность шары admin$ на ней (без этого psexec не будет работать, и не получится скопировать шрифты), проверяется наличие уже установленного клиента и то, что его версия старее устанавливаемой (иначе запрашивается дополнительное подтверждение), ну и собственно начинается установка. Если был обнаружен уже установленный клиент, то до установки удаляется регистрация его компонент (regsvr32 /u) и полностью сносится его каталог (%__dst_axapta%\client). Настройки подстановки шрифтов на w2k начинают дейтсвовать сразу, а на wxp/w2k3 понадобится перезагрузка.
Мне, правда, десятками за раз клиентов ставить не довелось, но батник легко подрихтовать, чтоб он лишнего не спрашивал и брал имя машины из ком.строки или из файла.
Да, на счет performance monitor: для него на удаленной машине регистрируются счетчики COM-коннектора, но сам коннектор не регистрируется. Если это необходимо, то можно добавить его в эту строчку аналогично другим dll:Код: psexec \\%__host% cmd /c for %%a in ("%__client_dir%\bin\*.ocx" "%__client_dir%\bin\anameter.dll" "%__client_dir%\bin\smmaxol.dll") do regsvr32 /s %%a
Последний раз редактировалось gl00mie; 18.07.2007 в 10:03.
|