С помощью скрипта PowerShell мы создаем файл, содержащий текст и команды PCL для создания красиво отформатированной страницы, мне нужно распечатать этот файл на локальном подключенном принтере. К сожалению, командлет PowerShell Out-Printer
форматирует выходные данные и уничтожает команды PCL, поэтому Out-Printer
непригоден для этой работы.
Отправка файла на принтер LPR работает должным образом,
$socket = new-object System.Net.Sockets.TcpClient($global:remoteHost, $global:port)
$stream = $socket.GetStream()
$writer = new-object System.IO.StreamWriter($stream,[System.Text.Encoding]::GetEncoding(1252))
$writer.Write($str2write)
$writer.Flush()
$writer.Close()
$stream.Close()
К сожалению, этот подход работает только с принтерами TCP, но не с локально подключенными принтерами.
Поэтому мне нужен код PowerShell для помещения этого файла непосредственно в очередь принтеров Windows, минуя драйвер принтера Windows.
Буду признателен за любую помощь.