コード例 #1
0
ファイル: usb.cs プロジェクト: elicec/springcard.pcsc.sdk
        public static List <DeviceInfo> EnumDevices(EnumDeviceFilter filter)
        {
            List <DeviceInfo> devices = new List <DeviceInfo>();

            try
            {
                ManagementObjectCollection collection = null;

                string selectString = @"SELECT * From Win32_PnPEntity WHERE (PNPDeviceID LIKE '%USB%VID%&PID%')";

                using (ManagementObjectSearcher searcher = new ManagementObjectSearcher(selectString))
                    collection = searcher.Get();

                if (collection != null)
                {
                    foreach (ManagementObject md in collection)
                    {
                        try
                        {
                            DeviceInfo ud = new DeviceInfo(md);
                            if (filter != null)
                            {
                                if (!filter(ud))
                                {
                                    continue;
                                }
                            }

                            devices.Add(ud);
                        }
                        catch {}
                    }

                    collection.Dispose();
                }
            }
            catch {}

            return(devices);
        }
コード例 #2
0
ファイル: usb.cs プロジェクト: springcard/springcard.iwm2.sdk
		public static List<DeviceInfo> EnumDevices(EnumDeviceFilter filter)
		{
			List<DeviceInfo> devices = new List<DeviceInfo>();
			
			try
			{
				ManagementObjectCollection collection = null;
				
				string selectString = @"SELECT * From Win32_PnPEntity WHERE (PNPDeviceID LIKE '%USB%VID%&PID%')";
				
				using (ManagementObjectSearcher searcher = new ManagementObjectSearcher(selectString))
					collection = searcher.Get();
				
				if (collection != null)
				{
					foreach (ManagementObject md in collection)
					{
						try
						{						
							DeviceInfo ud = new DeviceInfo(md);
							if (filter != null)
								if (!filter(ud))
									continue;
							
							devices.Add(ud);
						}
						catch {}						
					}
					
					collection.Dispose();
				}
			}
			catch {}
			
			return devices;			
		}