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

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

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

ภาพประจำตัวสมาชิก
jataz2
PHP Super Member
PHP Super Member
โพสต์: 275
ลงทะเบียนเมื่อ: 22/02/2011 11:48 am

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

โพสต์ที่ยังไม่ได้อ่าน โดย jataz2 »

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
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 43