2010-10-22 286 views
2

我需要使用命令行获取Windows XP打印机信息,如打印机端口和驱动程序名称。如何使用Windows机器上的命令行获取打印机信息?

我尝试使用Windows Server 2003资源工具包工具为您提供这样的信息,但它需要管理权限。在我们的生产场景中,我们也不能依赖部署外部工具包来获取打印机信息。

对此的任何想法?

+0

尝试MSDN:http://technet.microsoft.com/en-us/library/cc775908(WS.10).aspx – 2010-10-22 13:23:11

+0

这给出了打印服务的选项,而不是如何获取打印机信息 – Yani 2010-10-22 14:22:50

回答

0

您可以通过VB脚本使用WMI来实际获取信息,然后将其打印到控制台。在cscript.exe而不是wscript.exe中运行VB脚本可以在控制台窗口中运行它。

The ScriptingGuy article explains it a bit,但有关WMI提供

+0

这是一篇非常不错的文章!谢谢 – Yani 2010-10-22 14:22:25

1
strComputer = "." 
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") 
Set colInstalledPrinters = objWMIService.ExecQuery("Select * from Win32_PrinterConfiguration") 
For Each objPrinter in colInstalledPrinters 
    Wscript.Echo "Name: " & objPrinter.Name 
    Wscript.Echo "Driver Version: " & objPrinter.DriverVersion 
Next 
+0

究竟是我在找什么,但找不到 - 好东西。 – mdm 2010-10-22 13:46:52

+0

这真的很接近我想要的。但我也需要驱动程序名称。这里你去:http://www.computerperformance.co.uk/vbscript/wmi_printer.htm – Yani 2010-10-22 14:21:50

0

还有更多的信息,您也可以直接到C:\ Windows \ System32下,然后运行:

cscript prnmngr.vbs 

在命令行。 ..似乎给你所有你需要的信息

http://technet.microsoft.com/en-us/library/cc725868(WS.10).aspx

+0

在Windows XP上找不到prnmngr.vbs!所以尝试WMI SCript选项,感谢您的帮助! – Yani 2010-10-22 14:20:53

+0

来自问题http://stackoverflow.com/questions/13311201/get-default-printer-name-from-command-line,我发现位置现在是'C:\ Windows \ System32 \ Printing_Admin_Scripts \ en-US'。 – 2014-04-01 06:22:27