【问题标题】:Change the default settings of a print queue更改打印队列的默认设置
【发布时间】:2019-03-28 09:25:56
【问题描述】:

我们正在创建一个从 Excel 文件收集用户输入的脚本。每行代表一台打印机及其特定设置。所以对于每一行我们需要在打印服务器上创建一个打印队列。

我们正在努力设置打印机的默认设置,这样当网络上的用户将打印机添加到他/她的系统时,设置会从打印服务器上的队列中接管。

PageOrientation 为例

在服务器上的打印队列中,我们选择Properties > Preferences > Basic,我们在其中设置了PageOrientation = Landscape。当用户在他/她的系统上安装网络打印机时使用这些设置:

在 PowerShell 中,我们尝试请求 PageOrientation 的值并期望找到 Landscape,但总是得到 Portrait

一些代码:

Add-Type -AssemblyName System.Printing
$permissions = [System.Printing.PrintSystemDesiredAccess]::AdministrateServer
$queueperms = [System.Printing.PrintSystemDesiredAccess]::AdministratePrinter
$server = New-Object System.Printing.PrintServer -argumentList $permissions
$queues = @($server.GetPrintQueues())
$Printer = $queues.Where( {$_.Name -eq $testPrinter.PrinterName})

# Results all in 'Portrait' not 'Landscape'
$Printer.CurrentJobSettings.CurrentPrintTicket.PageOrientation
$Printer.DefaultPrintTicket.PageOrientation
$Printer.PropertiesCollection.UserPrintTicket.value.PageOrientation
$Printer.PropertiesCollection.DefaultPrintTicket.value.PageOrientation
$Printer.UserPrintTicket.PageOrientation

尝试使用Set-PrintConfiguration 更改默认托盘在使用Get-PrinterConfiguration 进行检查时确实反映了更改,但它在 GUI 中不可见,并且在用户添加网络打印机时也不会作为默认值应用。

$PrintConfiguration = Get-PrintConfiguration -PrinterName $PrinterName
$PrintTicketXML = [XML]$PrintConfiguration.PrintTicketXML
$CurrentTray = ($PrintTicketXML.PrintTicket.Feature).where( {$_.name -eq 'psk:JobInputBin'}).option.name
$NewTray = if ($Tray -eq 'AutoSelect') {"psk:$Tray"} else {"ns0000:$Tray"}
$UpdatedPrintTicketXML = $PrintConfiguration.PrintTicketXML -Replace "$CurrentTray", "$NewTray"
Set-PrintConfiguration -PrinterName $PrinterName -PrintTicketXml $UpdatedPrintTicketXML

我们在哪里可以找到Default trayPaper type 等这些默认属性,最重要的是设置它们的值?

【问题讨论】:

  • 几年前当我研究柯尼卡打印机时,我无法找到设置这些的方法,他们的支持也没有任何想法。看这个问题,看看其他人有没有运气!

标签: .net powershell printing


【解决方案1】:

大家好,我的回答可能为时已晚,但无论如何我都会发布,如果它可以帮助某人,您可以使用 KMDRVSET 来自柯尼卡美能达的 cmd 控制工具。它在 Konica InfoHub 上可用,如果您无法访问 InfoHub,请与 KM 技术人员联系。 Manual

【讨论】:

    猜你喜欢
    • 2011-10-17
    • 1970-01-01
    • 2010-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多