Search code examples
c#winapiwmi

Where can I find all tables used in ManagementObjectSearcher in win32 API


I was getting curious to know various classes/tables that can be queried for ManagementObject to read hardware details.

e.g.

ManagementObjectSearcher adapters = 
new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapter");

i.e.

1. Win32_NetworkAdapter
2. Win32_LogicalDisk
3. Win32_Service

Where can I find whole list of such tables.


Solution

  • You could select appropriate tables from the following list: http://msdn.microsoft.com/en-us/library/aa389273(v=vs.85).aspx

    You could also get this list programmatically:

    ManagementObjectSearcher wmi = new ManagementObjectSearcher
        ("SELECT * FROM meta_class WHERE __CLASS LIKE 'Win32_%'");
    foreach (ManagementObject obj in wmi.Get())
        Console.WriteLine(obj["__CLASS"]);