ManagementObjectSearcher حدد طابعات الشبكة؟
-
16-09-2020 - |
سؤال
أنا أستعمل :
ManagementObjectSearcher searcher = new
ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_Printer");
للحصول على الطابعات ولكنها تجد الطابعات المحلية ..من الممكن تحديد طابعات الشبكة، ربما عن طريق IP؟
المحلول
يمر "شبكة" إلى مفهرس الكائنات لكل عنصر في ManagementObjectCollection.إذا كانت الطابعة طابعة شبكة فسوف يعود صحيحا.كما يمكنك المرور "محلي" لتحديد ما إذا كانت الطابعة محلية.
var searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_Printer");
var results = searcher.Get();
IList<ManagementBaseObject> printers = new List<ManagementBaseObject>();
foreach (var printer in results) {
if ((bool)printer["Network"]) {
printers.Add(printer);
}
}
لا تنتمي إلى StackOverflow