Giriş
Şu satırı dahil ederiz.
using System.Management;
Bu sınıf ile SQL gibi sorgu yapabiliyoruz. Açıklaması şöyle.When using ManagementObjectSearcher - one can search for specific properties (instead of all by *).
Constructor - ManagementScope + ObjectQuery
Şöyle yaparız.
var managementScope = new ManagementScope();
//get disk drives
var query = new ObjectQuery("select * from Win32_DiskDrive");
var searcher = new ManagementObjectSearcher(managementScope, query);
Constructor - string olarak ManagementScope + ObjectQueryScope ile sorgu şöyle yapılır
ManagementObjectSearcher searcher =
new ManagementObjectSearcher("root\\WMI",
"SELECT * FROM MSAcpi_ThermalZoneTemperature");
foreach (ManagementObject queryObj in searcher.Get())
{
Console.WriteLine("CurrentTemperature: {0}", (queryObj["CurrentTemperature"]));
Console.WriteLine(queryObj);
}
Constructor - ManagementScope + SelectQuery
Şöyle yaparız
Constructor - WqlObject sorgu
Şöyle yapılır.
Örnek
Şöyle yaparız
ManagementScope scope = new ManagementScope(...);
...
scope.Connect();
SelectQuery query = new SelectQuery("Select * FROM
Win32_NetworkAdapterConfiguration");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
Constructor - WqlObject sorgu
Şöyle yapılır.
WqlObjectQuery q = new WqlObjectQuery("SELECT * FROM Win32_IDEController");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(q);
Constructor - string sorguÖrnek
Şöyle yaparız
ManagementObjectSearcher searcher = new ManagementObjectSearcher(
"SELECT MediaLoaded FROM Win32_CDROMDrive");
ManagementObjectCollection moc = searcher.Get();
Örnek
Sadece sorgu şöyle yapılır
searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");
int i = 0;
foreach(ManagementObject wmi_HD in searcher.Get())
{
// get the hardware serial no.
wmi_HD["SerialNumber"]
}
Şöyle yaparız.
ManagementObjectSearcher mSearch
= new ManagementObjectSearcher("Select * from Win32_SerialPort");
ManagementObjectCollection mReturn = mSearch.Get();
Eğer aldığımız nesnenin tüm alanlarını görmek istersek şöyle yaparız.var oReturnCollection = searcher.Get();
//List all properties available
var colList = oReturnCollection.Cast<ManagementObject>().First();
foreach (var property in colList.Properties)
{
Console.WriteLine("Property: {0} = {1}", property.Name, property.Value);
}
Hiç yorum yok:
Yorum Gönder