Подключение к сетевому принтеру с использованием сети
Меня попросили добавить пинтеры всем пользователям на терминальном сервере. Существует VPN-соединение между сервером терминалов и сетью, в которой установлен принтер.
У меня нет большого опыта работы с сетевыми ресурсами, но мне удалось подключиться к принтеру вручную. (win+r > \192.168.xx.xx). После ввода учетных данных (домен: ADAM.local) я вижу общие ресурсы в проводнике, включая пару принтеров. Двойной щелчок по принтеру добавляет его к "принтерам и устройствам", и я могу выбрать его как принтер, который пытается распечатать документ.
Я надеялся, что смогу использовать "net use" для написания скрипта, который подключит пользователя к принтеру при запуске.
Я пытался с помощью net use * \\192.168.xx.xx <password> /user:ADAM.local\printACC /persistent:yes
подключиться к сетевому ресурсу. Это приводит к ошибке: System error 67 has occurred. The network name cannot be found.
Может ли кто-нибудь помочь мне с синтаксисом и параметрами для команды net use?
4 ответа
Терминальный сервер сопоставляет / устанавливает клиентские принтеры по умолчанию с рабочего стола, к которому он подключается, по умолчанию в сеансе пользователя.
Для этого необходимо убедиться, что на сервере терминалов установлен только драйвер принтера. Установите 32- и 64-разрядную версию. Нет необходимости в карте.
Убедитесь, что настройки сервера терминалов разрешают сопоставление принтеров. оставьте флажок ОТКЛЮЧЕНО.
Печать идет с сервера терминалов по протоколу rdp на принтер через клиента.
Другой вариант - установить все принтеры с правами администратора на сервере. Они будут доступны всем пользователям. Однако я не рекомендую это. Я думаю, что лучше всегда перенаправлять пользователя на его принтер по умолчанию.
Твойnet use * \\192.168.xx.xx
В команде etc отсутствует имя очереди — у вас есть только IP-адрес сервера. Должно быть похожеnet use * \\192.168.xx.xx\queue
плюс другие варианты, которые у вас есть, если они вам нужны.
Вы не можете использовать net use
команда.
Однако у вас есть несколько вариантов. Если у вас есть домен 2008 года, вы можете использовать групповую политику для развертывания ваших принтеров.
Если у вас нет сервера печати 2008, вам нужно будет использовать скрипт входа в систему. Добавьте следующую строку в ваш скрипт входа в систему:
cscript \\domain.local\NETLOGON\Printer.vbs //B
После этого добавьте файл, назовите его Printer.vbs и вставьте в него следующее.
Option Explicit
Dim objNetwork, strPrinter1,strPrinter2,strPrinter3
strPrinter1 = "\\servername\printerx"
strPrinter2 = "\\servername\printery"
strPrinter3 = "\\servername\printerz"
Set objNetwork = CreateObject("WScript.Network")
objNetwork.AddWindowsPrinterConnection strPrinter1
objNetwork.AddWindowsPrinterConnection strPrinter2
objNetwork.AddWindowsPrinterConnection strPrinter3
WScript.Quit
Когда я пытался использовать команду net use, я думал, что в качестве порта назначения я использую LPT2 или LPT3, а не *. Однажды я могу успешно использовать команду net use, но я не использую имя пользователя и пароль. Просто, например: NET USE LPT2: \\SERVER\CANONIP /persistent:yes
и это работает как шарм. Я думаю, что ваш код уже правильный. Где-то есть другая проблема. Извините, что не был слишком полезным.