Учебники

Пакетный скрипт — Печать

Печать также можно контролировать из Пакетного сценария с помощью команды NET PRINT.

Синтаксис

PRINT [/D:device] [[drive:][path]filename[...]]

Где / D: устройство — указывает устройство печати.

пример

print c:\example.txt /c /d:lpt1

Приведенная выше команда напечатает файл example.txt на параллельный порт lpt1.

Управление принтером из командной строки

Начиная с Windows 2000, многие, но не все, параметры принтера можно настроить из командной строки Windows с помощью PRINTUI.DLL и RUNDLL32.EXE.

Синтаксис

RUNDLL32.EXE PRINTUI.DLL,PrintUIEntry [ options ] [ @ commandfile ]

Где некоторые из доступных вариантов следующие —

  • / DL — Удалить локальный принтер.

  • / dn — удалить подключение к сетевому принтеру.

  • / dd — удалить драйвер принтера.

  • / e — Показать настройки печати.

  • / f [файл] — либо файл inf, либо выходной файл.

  • / F [файл] — расположение INF-файла, от которого может зависеть INF-файл, указанный в / f.

  • / ia — установить драйвер принтера с помощью файла inf.

  • / id — установить драйвер принтера с помощью мастера добавления драйвера принтера.

  • / if — установить принтер с помощью файла inf.

  • / ii — Установите принтер с помощью мастера добавления принтера с помощью файла inf.

  • / il — Установить принтер с помощью мастера добавления принтера.

  • / in — Добавить подключение к сетевому принтеру.

  • / ip — установить принтер с помощью мастера установки сетевого принтера.

  • / k — Печать тестовой страницы на указанном принтере, не может сочетаться с командой при установке принтера.

  • / l [путь] — Путь источника драйвера принтера.

  • / m [модель] — название модели драйвера принтера.

  • / n [имя] — имя принтера.

  • / o — Показать представление очереди принтера.

  • / p — Показать свойства принтера.

  • / Ss — сохранить настройки принтера в файл.

  • / Sr — восстановить настройки принтера из файла.

  • / y — установить принтер по умолчанию.

  • / Xg — Получить настройки принтера.

  • / Xs — установить настройки принтера.

/ DL — Удалить локальный принтер.

/ dn — удалить подключение к сетевому принтеру.

/ dd — удалить драйвер принтера.

/ e — Показать настройки печати.

/ f [файл] — либо файл inf, либо выходной файл.

/ F [файл] — расположение INF-файла, от которого может зависеть INF-файл, указанный в / f.

/ ia — установить драйвер принтера с помощью файла inf.

/ id — установить драйвер принтера с помощью мастера добавления драйвера принтера.

/ if — установить принтер с помощью файла inf.

/ ii — Установите принтер с помощью мастера добавления принтера с помощью файла inf.

/ il — Установить принтер с помощью мастера добавления принтера.

/ in — Добавить подключение к сетевому принтеру.

/ ip — установить принтер с помощью мастера установки сетевого принтера.

/ k — Печать тестовой страницы на указанном принтере, не может сочетаться с командой при установке принтера.

/ l [путь] — Путь источника драйвера принтера.

/ m [модель] — название модели драйвера принтера.

/ n [имя] — имя принтера.

/ o — Показать представление очереди принтера.

/ p — Показать свойства принтера.

/ Ss — сохранить настройки принтера в файл.

/ Sr — восстановить настройки принтера из файла.

/ y — установить принтер по умолчанию.

/ Xg — Получить настройки принтера.

/ Xs — установить настройки принтера.

Тестирование, если принтер существует

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

Существование принтера можно оценить с помощью файла RUNDLL32.EXE PRINTUI.DLL, который используется для управления большинством настроек принтера.

пример

SET PrinterName = Test Printer
SET file=%TEMP%\Prt.txt
RUNDLL32.EXE PRINTUI.DLL,PrintUIEntry /Xg /n "%PrinterName%" /f "%file%" /q

IF EXIST "%file%" (
   ECHO %PrinterName% printer exists
) ELSE (
   ECHO %PrinterName% printer does NOT exists
)

Приведенная выше команда сделает следующее —

Сначала будет установлено имя принтера и имя файла, в котором будут храниться настройки принтера.

Команды RUNDLL32.EXE PRINTUI.DLL будут использоваться для проверки, действительно ли принтер существует, путем отправки параметров конфигурации файла в файл Prt.txt.