win32_printer不会出现在WmiObject可以(Windows电源外壳)
问题描述:
我有Windows 7专业版的PC上的问题。我需要列出网络打印机在我的本地网络,我试图用命令在PowerShell中运行列表中的对象类:win32_printer不会出现在WmiObject可以(Windows电源外壳)
Get-WMIObject -List | where {$_.name -match 'win32_printer'}
这说明空的,任何建议来解决这个问题?
编辑: 我对获得网络打印机脚本是这样的:
Set-Location -Path C:\; get-WmiObject -class Win32_printer | ConvertTo-Json | Set-Content -Encoding utf8 C:\\xampp\\htdocs\\project\\view\\data\\printers.json
我需要列出一个JSON文件的打印机,在我的电脑上运行良好,但在PC,我需要运行此脚本失败
答
你的命令列出所有WMI类,然后筛选出所有这些包含Win32_Printer
这些类。看起来你想要使用:
Get-WMIObject Win32_Printer
这将列出所有连接到您的计算机(不是所有的都在您的网络上)的打印机。请注意,它只会显示连接到您的用户帐户的网络打印机。
如果您正在寻找网络上的所有打印机,你可以列出所有的Active Directory中发布的队列
Get-ADObject -Filter "ObjectCategory -eq 'printQueue'"
注:此命令要求从RSAT
去阅读文档的AD模块'GET-WMIObject';你想使用'-class'参数。请注意,有两个相关的类;一个寻址“本地”打印机(即不由另一台计算机提供服务),另一个寻址由另一台计算机提供服务的网络打印机。 –
@JeffZeitlin'Win32_Printer'列出了本地和网络打印机。 – BenH
@ BenH - 我们遇到过这样的情况:'Win32_Printer'没有捕获到网络打印机的打印机连接;对于那些,我们需要'Win32_PrinterConnection'。 –