2

因此,我的任务是获取我们所有可以彩色打印的打印机的报告。我从这里找到了一个脚本(http://voices.yahoo.com/listing-printers-ips-using-windows-powershell-6617942.html?cat=15),它适用于所有事情,但如果它的颜色就不行.

Get-WMIObject -class Win32_Printer -computer $printserver | Select Name,DriverName,PortName,CapabilityDescriptions

我认为“CapabilityDescriptions”会起作用,但这是基于驱动程序,我们使用的是 HP Universal Printing PS。

所以我仔细检查了,事实上,当在打印服务器上并转到“功能”下的“常规”选项卡上的打印机属性时,它列出了“颜色”。

事实上,一台彩色打印机说“是”,而一台非彩色打印机说“否”

现在我缺少另一种类型的 powershell 脚本变量来查找每台打印机的颜色“是/否”吗?

谢谢!

4

3 回答 3

1

不确定您正在运行哪个版本的 PowerShell 以及您是否可以访问 Windows 8 机器,但如果您这样做,PrinterManagement 模块会帮助您,因为它似乎可以正确识别彩色打印机(我们也使用通用驱动程序):

PS> get-printconfiguration -ComputerName $printserver -PrinterName $nonprinter

PrinterName     ComputerName    Collate    Color      DuplexingMode
-----------     ------------    -------    -----      -------------
printername       servername   False      False      OneSided

PS> get-printconfiguration -ComputerName $printserver -PrinterName $colorprinter

PrinterName     ComputerName    Collate    Color      DuplexingMode
-----------     ------------    -------    -----      -------------
printername       servername   False      True       OneSided
于 2013-09-09T14:45:10.170 回答
0
gwmi win32_printer -cn $printserver | select name,capabilitydescriptions

是我用的。

于 2013-11-20T21:23:26.953 回答
0

在我的环境中,所有打印机都报告 Color: true 即使它们不是。当它们不是彩色打印机时,我在服务器上的打印机属性下没有任何条目说颜色:是/真。(一般/特征/颜色:没有,还没有

Get-PrintConfiguration -PrinterName XYZ_BW_PRINTER_1

PrinterName     ComputerName    Collate    Color      DuplexingMode       
-----------     ------------    -------    -----      -------------       
XYZ_BW_Printer_...                 False      True       OneSided 

(与每个现有命令的结果相同)

为什么会这样?

于 2021-11-04T21:36:24.447 回答