使用PowerShell脚本,我们创建一个包含文本和PCL命令的文件,以生成格式正确的页面,我需要在本地连接的打印机上打印此文件。
不幸的是,PowerShell cmdlet 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打印机队列。
我将不胜感激。