簡體   English   中英

如何列出網絡計算機上的所有打印機

[英]How to list all printers on network computer

如下圖所示,當我嘗試檢索所有打印機時,我只有2台打印機。

有沒有辦法使用PowerShell WMI或C#返回所有打印機(以便我可以在powershell中翻譯它)?

我試過System.Drawing.Printing.PrinterSettings.InstalledPrinters (參考how to get the list of all printers in computer - C# Winform ),但也只顯示2個條目。

在此輸入圖像描述

只是,

通過System.Drawing.Printing

foreach (String printer in PrinterSettings.InstalledPrinters)
{
    Console.WriteLine(printer.ToString()+Environment.NewLine);
} 

通過WMI

public static void AvailablePrinters()
{
 oManagementScope = new ManagementScope(ManagementPath.DefaultPath);
 oManagementScope.Connect();

 SelectQuery oSelectQuery = new SelectQuery();
 oSelectQuery.QueryString = @"SELECT Name FROM Win32_Printer";

 ManagementObjectSearcher oObjectSearcher = 
    new ManagementObjectSearcher(oManagementScope, @oSelectQuery);
 ManagementObjectCollection oObjectCollection = oObjectSearcher.Get();

 foreach (ManagementObject oItem in oObjectCollection)
 {

 Console.WriteLine("Name : " + oItem["Name"].ToString()+ Environment.NewLine);
 }
}

通過PowerShell

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

有關詳細信息,請查看本文和WMI打印機

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM