windows 2000 terminal server + remote printer

Windows 95, 98, ME и 3,11; WinNT, Win2000, WinXP, Win2003, Vista, 7
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

windows 2000 terminal server + remote printer

Непрочитанное сообщение schizoid » 2009-04-28 10:50:37

в общем суть. есть терминальный сервак, есть клиенты, при подключении их локальные принтера отображаются на терминалке, все печатают, все рады.
но загвоздка в том, что при отключении клиента, принтер остается на серваке...разводится хлам. че может быть?
права юзеров - группа "Пользователи"
в евентсах пусто.
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
LHC
мл. сержант
Сообщения: 127
Зарегистрирован: 2008-09-10 11:02:35
Откуда: Москва
Контактная информация:

Re: windows 2000 terminal server + remote printer

Непрочитанное сообщение LHC » 2009-04-29 14:45:44

Можно предложить добавить в Task Scheduler задачу перезапуска spooler-а раз в сутки (или чаще), тогда "несуществующие" принтеры в отвалившихся сеансах будут убираться.
Если хочешь, чтобы дело было сделано правильно, сделай его сам!

mazay
проходил мимо

Re: windows 2000 terminal server + remote printer

Непрочитанное сообщение mazay » 2009-04-30 9:38:22

У меня отваливаются, но спустя несколько часов после завершения сеанса. Наверно есть параметр , регулирующий этот отрезок

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: windows 2000 terminal server + remote printer

Непрочитанное сообщение schizoid » 2009-04-30 11:43:40

reboot spooler-а ни к чему не приводит. клиенты то есть, просто сеансы дургие у них уже. это разве что по ночам...
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: windows 2000 terminal server + remote printer

Непрочитанное сообщение schizoid » 2009-05-03 11:03:05

кстати, может кто-нить знает , принтерами из консоли можно как-то управлять?
просмотреть список, удалить, добавить?
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
koffu
сержант
Сообщения: 154
Зарегистрирован: 2008-03-23 0:51:18
Откуда: Киев
Контактная информация:

Re: windows 2000 terminal server + remote printer

Непрочитанное сообщение koffu » 2009-05-04 0:07:42

В W2003 я добавлял сетевые принтеры как локальные, не мог решить проблему - на терминальном сервере если устанавливать сетевые принтера через мастер, то он прописывается в HKCU, соответственно его видит только тот, кто установил. Локальный-же в HKLM - тут видят все. Устанавливать всем руками или лично каждому в профайл не оч хотелось. Я как-то нашел способ установить сетевой smb-принтер как локальный, попробуй, может в 2000 он сработает тоже...
в cmd выполняем:

Код: Выделить всё

rundll32 printui.dll,PrintUIEntry /?
выскочит окошко с списком опций, нужные -ga, -ge, -gd, остальные использовал для указания драйверов вместе с -ga.

Код: Выделить всё

Использование: rundll32 printui.dll,PrintUIEntry [параметры] [@командный файл]
   /a[имя_файл] имя двоичного файла
   /b[имя] основное имя принтера
   /c [имя] UNC-имя компьютера, где выполняется команда
   /dl удаление локального принтера
   /dn удаление подключения к сетевому принтеру
   /dd удаление драйвера принтера
   /e вывод параметров настройки печати
   /f[file] или информационный файл, или выходной файл
   /ga добавление подключений компьютеров к принтеру (подключение распространяется на компьютер пользователя в момент входа в систему)
   /ge перечисление подключений компьютеров к принтеру
   /gd удаление подключений компьютеров к принтеру  (подключение удаляется  в момент входа пользователя в систему)
   /h[arch] архитектура драйвера, принимает значения: x86 | Itanium | x64
   /ia установка драйвера принтера с помощью информационного файла
   /id установка драйвера принтера с помощью мастера установки драйверов принтеров
   /if установка принтера с помощью информационного файла
   /ii установка принтера с помощью мастера установки принтеров и информационного файла
   /il установка принтера с помощью мастера установки принтеров
   /in добавление подключения к принтеру
   /j[provider] имя системы печати
   /k печать пробной страницы на выбранном принтере, не может использоваться с другими командами установки принтера
   /l[path] путь к исходному размещению драйвера принтера
   /m[model] имя модели драйвера принтера
   /n[name] имя принтера
   /o показать очередь заданий на печать
   /p отображение свойств принтера
   /q скрытый режим без вывода сообщений об ошибках
   /r[port] имя порта
   /s показать свойства сервера
   /Ss запись параметров принтера в файл
   /Sr чтение параметров принтера из файла
   Флаги при записи или чтении параметров принтера, помещаемые в конце команды:
	2	PRINTER_INFO_2
	7	PRINTER_INFO_7
	c	профиль цвета
	d	PrinterData
	s	дескриптор безопасности
	g	глобальный DevMode
	m	минимальный набор параметров
	u	пользовательский DevMode
	r	разрешить конфликты имен
	f	принудительное использование имени
	p	сопоставить порт
	i	кофликт имен
   /u использовать существующий драйвер принтера если он установлен
   /t[#] номер начальной страницы (с нуля)
   /v[version] версия драйвера для Windows 95, Windows 98 или Me | Windows NT 4.0 | Windows 2000, Windows XP и Windows Server 2003 | Windows XP и Windows Server 2003
   /w запрос драйвера у пользователя, если драйвер не найден в inf-файле
   /y назначить принтер используемым по умолчанию
   /Xg получить параметры принтера
   /Xs установить параметры принтера
   /z не разрешать автоматический общий доступ к этому принтеру
   /Y не генерировать автоматически имя принтера
   /K изменяет значение ключей /v и /h, разрешая значения 0,2,3, соответствующие Windows x64 и Windows IA64 | Windows NT x86 | Windows 4.0
   /Z общий доступ к принтеру, используется только вместе с /if
   /? вывод справки
   @[file] файл аргументов командной строки
   /Mw[сообщение] отображать предупредительное сообщение перед выполнение команды
   /Mw[сообщение] отображать сообщение подтверждения перед выполнением команды
   /W[флаги] указывает флаги и ключи для мастеров (добавления принтера и драйвера)
	r	позволить этим мастерам перезапускаться с последней страницы
   /G[флаги] указывает глобальные флаги и ключи
	w	подавляет предупреждения интерфеса пользователя по установке драйвера (супер тихий режим)

Примеры:
   Запуск свойств сервера: 
rundll32 printui.dll,PrintUIEntry /s /t1 /n\\machine
   Запуск свойств принтера: 
rundll32 printui.dll,PrintUIEntry /p /n\\machine\printer
   Локальный запуск мастера установки принтеров: 
rundll32 printui.dll,PrintUIEntry /il 
   Запуск мастера установки принтеров на компьютере \\machine: 
rundll32 printui.dll,PrintUIEntry /il /c\\machine
   Запуск показа очереди: 
rundll32 printui.dll,PrintUIEntry /o /n\\machine\printer
   Запуск установки с помощью информационного файла: 
rundll32 printui.dll,PrintUIEntry /if /b "Test Printer" /f %windir%\inf\ntprint.inf /r "lpt1:" /m "AGFA-AccuSet v52,3"
   Запуск мастера установки принтеров с помощью информационного файла: 
rundll32 printui.dll,PrintUIEntry /ii /f %windir%\inf\ntprint.inf
   Добавление подключений компьютеров к принтеру (подключение распространяется на компьютер пользователя в момент входа в систему): 
rundll32 printui.dll,PrintUIEntry /ga /c\\machine /n\\machine\printer /j"LanMan Print Services"
   Удаление подключений компьютеров к принтеру (подключение удаляется  в момент входа пользователя в систему): 
rundll32 printui.dll,PrintUIEntry /gd /c\\machine /n\\machine\printer
   Перечисление подключений компьютеров к принтеру: 
rundll32 printui.dll,PrintUIEntry /ge /c\\machine
   Добавление драйвера принтера с помощью информационного файла: 
rundll32 printui.dll,PrintUIEntry /ia /c\\machine /m "AGFA-AccuSet v52,3" /h "x86" /v "Windows 2000, Windows XP и Windows Server 2003" /f %windir%\inf\ntprint.inf
   Добавить драйвер принтера: 
rundll32 printui.dll,PrintUIEntry /ia /K /c\\machine /m "AGFA-AccuSet v52,3" /h "Windows NT x86" /v 3
   Удаление драйвера принтера: 
rundll32 printui.dll,PrintUIEntry /dd /c\\machine /m "AGFA-AccuSet v52,3" /h "x86" /v "Windows 2000, Windows XP и Windows Server 2003"
   Удалить драйвер принтера: 
rundll32 printui.dll,PrintUIEntry /dd /K /c\\machine /m "AGFA-AccuSet v52,3" /h "Windows NT x86" /v 3
   Назначение принтера используемым по умолчанию: 
rundll32 printui.dll,PrintUIEntry /y /n "printer"
   Указание описания принтера: 
rundll32 printui.dll,PrintUIEntry /Xs /n "printer" comment "My Cool Printer"
   Получение параметров принтера: 
rundll32 printui.dll,PrintUIEntry /Xg /n "printer"
   Получение параметров принтера и запись их в файл: 
rundll32 printui.dll,PrintUIEntry /f "results.txt" /Xg /n "printer"
   Справка об установке параметров принтера:
rundll32 printui.dll,PrintUIEntry /Xs /n "printer" ?
   Запись всех параметров принтера в файл: 
rundll32 printui.dll,PrintUIEntry /Ss /n "printer" /a "file.dat"
   Восстановление всех параметров принтера из файла: 
rundll32 printui.dll,PrintUIEntry /Sr /n "printer" /a "file.dat"
   Запись сведений принтера уровня 2 в файл: 
rundll32 printui.dll,PrintUIEntry /Ss /n "printer" /a "file.dat" 2
   Восстановление дескриптора безопасности из файла: 
rundll32 printui.dll,PrintUIEntry /Sr /n "printer" /a "file.dat" s
   Восстановление глобального devmode и данных принтера из файла: 
rundll32 printui.dll,PrintUIEntry /Sr /n "printer" /a "file.dat" g d
   Восстановление минимального набора параметров из файла и разрешение имени порта: 
rundll32 printui.dll,PrintUIEntry /Sr /n "printer" /a "file.dat" m p

вот остались кое-какие заметки из рабочих скриптов:

Код: Выделить всё

@echo off
echo "installing pc1 web"
rundll32 printui.dll,PrintUIEntry /b "ML-1610_WEB" /x /n "ML-1610_WEB" /if /f \\srv\Printer_drivers\ML-1610_Drivers\SUGS1.inf /r "https://10.0.9.151:631/printers/ML-1610_WEB" /m "Samsung ML-1610 Series" /l "\\srv\Printer_drivers\ML-1610_Drivers"

echo "installing pc2 smb"
rundll32 printui.dll,PrintUIEntry /ia /f \\srv\Printer_drivers\HP-3050_Drivers\hppcpr01.inf /m "HP LaserJet 3050 Series PCL 6" /l \\srv\Printer_drivers\HP-3050_Drivers\
rundll32 printui.dll,PrintUIEntry /u /in /n \\pc2\HP-3050


echo "installing pc3 smb"
rundll32 printui.dll,PrintUIEntry /ia /f \\srv\Printer_drivers\ML-1750_Drivers\ssgb2.inf /m "Samsung ML-1750 Series" /l \\srv\Printer_drivers\ML-1750_Drivers\
rundll32 printui.dll,PrintUIEntry /u /in /n \\pc3\ML-1750


rundll32 printui.dll,PrintUIEntry /c\\srv /ga /n"\\pc2\hp-3050"


//rundll32 printui.dll,PrintUIEntry /in /n \\pc3\ML-1750
После всех шаманств ребутнуть спулер!!! Принтеры, добавленные через консоль коммандой с опцией -ga удаляются ТОЛЬКО -gd \\servername\printer , не пытайтесь удалить через мастер, он вывалит ошибку, он не умеет его искать там, где он прописан в реестре.

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: windows 2000 terminal server + remote printer

Непрочитанное сообщение schizoid » 2009-05-05 22:46:15

ага, снкс за наводку, буду курить :)
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Gloft
лейтенант
Сообщения: 645
Зарегистрирован: 2008-03-09 11:32:12
Откуда: Москва

Re: windows 2000 terminal server + remote printer

Непрочитанное сообщение Gloft » 2009-05-25 21:20:37

а как эти принтеры мапятся?
где ты настраивал монтироавние принтеров на терминале?

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: windows 2000 terminal server + remote printer

Непрочитанное сообщение schizoid » 2009-06-01 18:00:11

при подключении терминального пользователя мапятся его локальные принтера.
это настройки ТС
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: windows 2000 terminal server + remote printer

Непрочитанное сообщение schizoid » 2009-06-01 18:24:27

хм. обнаружил, что если выкосить все упоминания о зависшем принтере из реестра и затем рестартонуть спул, то принтер удаляется .
осталось теперь как-то батником получить список принтеров.
ядерный взрыв...смертельно красиво...жаль, что не вечно...