c# หาว่ามีอุปกรณ์ใดบ้างที่ต่อเข้ากับ computer เช่นพวก USB,Printer,Card reader ต่างๆ

แนะนำ สอบถาม ภาษา C สำหรับผู้เริ่มต้น ภาษา Java ภาษา Python

Moderators: mindphp, ผู้ดูแลกระดาน

User avatar
jataz2
PHP Super Member
PHP Super Member
Posts: 235
Joined: 22/02/2011 11:48 am

c# หาว่ามีอุปกรณ์ใดบ้างที่ต่อเข้ากับ computer เช่นพวก USB,Printer,Card reader ต่างๆ

Post by jataz2 » 22/04/2016 10:48 am

1. add reference -> System.Management
2. using System.Management;
3. ใช้ coding ดังนี้
ManagementObjectCollection collection;
using (var searcher = new ManagementObjectSearcher(@"Select * From Win32_PnPEntity where Name like '%Smart Card%'"))
{
collection = searcher.Get();
}
foreach (var device in collection)
{
try
{
var deviceName = (string)device.GetPropertyValue("Name");
if (deviceName.Contains("Smart Card"))
{
//เมื่อ detect เจอว่ามี Smart Card เชื่อมต่ออยู่ ก็ทำงาน blah blah blah
}
}
catch (Exception ex) { }
}

collection.Dispose();

Win32_PnPEntity คือ Plug and Play ซึ่งรวมพวก USB และอุปกรณ์อื่นๆด้วย ถ้าอยากเจาะจงเฉพาะที่เป็น USB ก็ใช้ Win32_USBHub
นอกจากนี้ยังมี Win32_XXXX อีกหลายตัวให้เลือกใช้ อ่านเพิ่มเติมได้ที่นี่ครับ https://msdn.microsoft.com/en-us/librar ... s.85).aspx

  • Similar Topics
    Replies
    Views
    Last post

Return to “Programming - C/C++ & java & Python”

Who is online

Users browsing this forum: No registered users and 24 guests