![]() |
Установка сетевых принтеров
Ктонибудь сталкивался с автоматическим подключением сетевых принтеров, я в теме: Установка клиентов терминалов, факсов и локальная установка нашел нужную мне команду rundll32 printui.dll,PrintUIEntry /in /n \\server\printer, но возникает ряд проблем:
1. Драйвера в данном случае должны быть либо стандартными, либо уже установленными, в моем случае драйвера на отдельном сервере. 2. В сети имеется несколько одинаковых принтеров но с разными названиями (например: x123-1 и х123-2) и если один из них уже установлен, то при подключении второго драйвера установленные уже локально подхватываются криво (недоступны функции дополнительной настройки) 3. Сделать настройки принтера автоматически невозможно. |
Dicken
1. А интегрировать разве нельзя? 2. ... 3. Почему? Вы проверяли, где они сохраняются? Process Monitor в помощь. |
Vadikan
Цитата:
на этапе установки самой ОС это естественно не проблема. интересует еще можно ли их интегрировать уже на установленную ОС(ХР) |
Dicken
Цитата:
|
Код:
//***************************************************** //JScript 2005 ShS addPrn.js //Подключение сетевого принтера и установка его принтером по умолчанию //Пример запуска: %LOGONSERVER%\NETLOGON\addPrn.js \\mg-srv-f04\HPLJ2200DN(23) //***************************************************** var WshNetwork, objArgs, strErrMsg, strPrinterPath; //Путь к подключаемому принтеру берем из параметров запуска objArgs=WScript.Arguments.Unnamed; strPrinterPath=objArgs.Item(0); // WshNetwork=WScript.CreateObject("Wscript.Network"); try { WshNetwork.AddWindowsPrinterConnection(strPrinterPath); WshNetwork.SetDefaultPrinter(strPrinterPath); } catch (objError) { if (objError !=0) { strErrMsg = "Произошла ошибка при подключении сетевого принтера - "+strPrinterPath+"\n"+ "Скорее всего, указанный сетевой путь не существует"+"\n\n"+ "Обратитесь к системному администратору по тел. 911" //"Код ошибки: "+ objError.number; WScript.Echo(strErrMsg); } } forum.sysadmins.ru |
monkkey
это все понятно, а как драйвера с сетевого диска подпихнуть??? |
в Portable Script Center есть пример
Installing a Printer Driver not Found in Drivers Cab Script Code strComputer = "." Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") set objDriver = objWMIService.Get("Win32_PrinterDriver") objDriver.Name = "NewPrinter Model 2900" objDriver.SupportedPlatform = "Windows NT x86" objDriver.Version = "3" objDriverPath = "C:\Scripts\NewPrinter.dll" objInfname = "C:\Scripts\NewPrinter.inf" intResult = objDriver.AddPrinterDriver(objDriver) Wscript.Echo intResult |
Micrus да я это уже нашел, также нашел подключение принтера:
Код:
strComputer = "." Цитата:
|
И так Dicken, привожу пример
Пусть есть у нас драйвер для RICOH 2020D Сначала распакуем его C:\Temp\r09114en\disk1\ Далее ищем в файле в секции [RICOH] имя принтера(objDriver.Name) а в секции [RIC619_DATA] параметр DriverFile=RIC619K.DLL и внизу скрипт, остается только сделать два действия подключить сетевой диск , если драйвера у тебя на шаре и после подключить принтер strComputer = "." Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") objWMIService.Security_.Privileges.AddAsString "SeLoadDriverPrivilege", True set objDriver = objWMIService.Get("Win32_PrinterDriver") objDriver.Name = "RICOH Aficio 2020D PCL 6" objDriver.SupportedPlatform = "Windows NT x86" objDriver.Version = "3" objDriver.DriverPath = "C:\Temp\r09114en\disk1\RIC619K.DLL" objDriver.Infname = "C:\Temp\r09114en\disk1\OEMSETUP.INF" intResult = objDriver.AddPrinterDriver(objDriver) Wscript.Echo intResult http://www.microsoft.com/technet/scr....mspx?mfr=true |
Время: 18:11. |
Время: 18:11.
© OSzone.net 2001-