|WMI (Windows Management Instrumentation)|
WMI is a common method for querying or modifying the hardware or software environment you are working in. Queries can be performed on both local or remote computers (subject to security)! You can use a cut down SQL syntax or filtering out objects you are not interested in.
In WMI there are lots of WMI "objects" for working with different classes of information, some examples are:
WMI is excellent in a controlled corporate environment but it wouldn't surprise me to find out that some users are stopping the required service and check Microsoft's site for information of which versions are pre-installed on what operating systems.
If you look up the MSDN documentation's index and type "WIN32_" you will get a good list (most start with this). Some WMI related sites are:
Microsoft and some vendors produce WMI providers, some links are:
Some "feature rich" :-) but still very useful Microsoft html application (hta) based scriping tools are:
The tools above are handy for queries, but don't help identify properties you can write to or any methods you can call, you will need to read the documentation for this information or try the queries in the "Microsoft WMI Object Queries" section.
Knowing the class name you can generally "google" the web or newsgroups for more information. Microsoft's "WMI Administrative Tools" download has a cryptic but useful "WMI CIM Studio" tool.
Some MAKEMSI sections that use WMI: