Introduction to the WMI GUI Tools
In this section you will learn how to query and manage the information on a remote machine, execute management tasks and generate reports using the WMI GUI tools.
The Browser View is the principal means of browsing through all the information available on a machine. This powerful view allows you to configure a set of root objects which will become the starting point for querying information. These root objects are either WMI classes, associations or queries. WMIX comes with a default set of objects which represents the most common information to be queried. However, this list can be modified to fit your needs.
Querying and Managing WMI
The Browser view initially presents a set of root information objects. A root object can either be a WMI class, association or query. These root objects do not hold information. For example, the root object Operating System does not hold the information of the remote machine’s operating system but defines the Operating System category. To actually see the instances of an object definition, double click on it. This prompts the remote machine for the information and returns the available instances.
Let’s start by querying some information. In this example, we want to know what are the currently configured shares of a remote machine.
- Locate the Share root object and double click on it. The Share root object is a WMI class. A WMI class is simply the definition of a computer object (such as a share). A class definition includes the available attributes for that object as well as the available tasks that can be executed on that object (we will explain how to execute tasks later on in this section). Classes exist for virtually every logical and physical component of a machine.You will be shown a result set such as this one:
- The items directly below the Share parent object are the actual instances of the Share root object. Each instance represents a separate share entry configured on the machine.
- Select any of the child share instances. You will notice that the Information Panel automatically changes to reflect the new selection and displays pertinent information about the selected share. It also presents a set of links which can be used to get more information and control over the selected item. Let’s analyze these options:
The first three links are Object Properties, Report Object Information and Object Reference Weblink.
Click on this link to view the full set of available properties this share instance holds. The object properties window will allow you to view and report all properties and to modify writable properties.
Report Object Information
Click on this link to generate a HTML report on this instance only. The HTML report is automatically created and saved in the report directory as configured in WMIX Options, and automatically opens in your default internet browser (see Reporting Information.)
Object Reference Weblink
Click on this link to open an external web page which contains technical information about this WMI object. The actual web site used to query technical information about WMI classes and associations is, by default, the English version of Microsoft’s® WMI Technical References web site. However, you can modify the URL used by WMIX in WMIX Options.
The Available Tasks category displays the miscellaneous management tasks which can be executed on the current browser selection. In this example, an instance of a share has the Delete, Delete Object, Get Access Mask and Set Share Info available tasks. Click on any of these links to start the execution wizard for that task.
Note: Instances may have tasks as well as their parent category object. For example, the parent category object Share has the Create… management task available which allows you to create a new share.
All of the links shown in the Information Panel are also available through the context sensitive menu of the object. For more information, see Executing Management Tasks.
Viewing WMI Objects Properties
Let’s select another information category. Double click on the OS Recovery Configuration item to disclose its only available instance. Select the child instance and click on Object Properties in the Information Panel. You can also select the Object Properties command from the View main menu or right-click on the mouse and select it from the context-sensitive menu.
The Object Properties window displays all available information for the selected instance. If the instance has properties which can be modified, they are inserted in a separate category and are displayed in blue. This window also includes an Information Panel which displays the description of the object and its available tasks.
Tip: Select any of the properties in order to display its description at the bottom of the grid.
If the object has a set of modifiable properties, they are displayed in blue. To modify any of these properties, simply change its value in the property grid and click on the Apply button.
Note: WMI does not always accept modifications to writable properties and will not return an error when these properties are modified. For this reason, WMIX always refreshes the property grid after you click on the Apply button. If you modified a property which WMI did not accept, the property grid will simply revert the changed property to its previous value.
Modifying Properties via a Script
When modifying an object property, you can also opt to export the modification as a WMI script. To do so, simply click on the Export as a Script button once you have set the properties to their desired values.
Viewing a WMI Object Class Definition
If you are interested in viewing an object’s WMI Class definition, select the parent object of the instances and click on the Object Class Definition link located in the Information Panel of the Browser view. The Class Definition window only displays the attribute definition of the object. Class definition is explained in more detail in the Namespace & Class View section.
Tip: It is sometimes desirable to know an object’s WMI class name in order to find the object in the Namespace & Classes view or to construct a query string. You can quickly copy the actual WMI class name of the selected object into the clipboard by pressing the CTRL+C keys.
Displaying WMI Object Associations
Computer components are by nature associated with other components. For instance, a computer share is associated with a directory and a set of security settings, a Network Adapter is associated with one or more network protocol bindings and a network hardware controller. In addition, each association between two computer components has a role. For example, a network protocol binding is a dependency of a network adapter and a directory is an element of a share. WMI includes a special type of class called an Association. A WMI Association contains properties and references to two or more objects. They are used to define relationships between computer components.
The WMIX Browser view lets you navigate through associations by using theObject -> Instance -> Role -> Association -> Object paradigm:
- Double click on an object to display its instances.
- Double click on an instance to display the available roles and associations this instance has with other components in the system.
- Double click on an association to display the available objects this association results in.
- And so on and so forth…
Let’s use the Shares example:
- Locate and double click on the Share root object in the Browser View.
- From the list of share instances displayed, select and double click on a non-administrative share. If you don’t have a non-administrative share available, you can continue by double clicking on any share but you may not see the same type of associations as shown in this example.The list of Roles and Associations are displayed underneath the share instances:You will notice that our share has two active associations: the Security Settings Of Logical Share association which is a Setting of the share and theShare To Directory association which is a Shared Element of the share.
- Now double click on the Share to Directory Association. This will disclose the actual Directory object instances which are associated with the Goverlan Share.
At this stage, we have gone through a full cycle of the Object -> Instance -> Role -> Association -> Object paradigm. We started with an object (the Share), and we went through the instance (the Goverlan Share), to the role (Shared Element), to the association (Share to Directory), to the object (Directory), to end with an instance (the c:\data\pjtech\software\goverlan directory instance).You can now open the Object Properties window of the c:datapjtechsoftwaregoverlan directory to view its information, or double click on the directory instance to start a new cycle of discovery. Double clicking on the directory instance will reveal more associations and more object instances which you can use to query more associations.
Aborting a query
In the previous example, double clicking on an item led to timely results because there aren’t usually a large number of shares on a system and the shares are not associated with a large number of other components. However, querying the instances or the available associations of some objects may take more time. This is because WMIX returns the currently active associations of an instance (not only the possible associations of an instance).
While WMIX is querying the information on an object, you can still use the other Browser Views currently opened or open a new Browser view and work on something else (see Connecting to a Remote Machine). If you do not wish to wait for the result set and want control of the browser view back, you can abort the process by clicking on the Stop Action button on the main toolbar.
Note: Once you have aborted a query on an item, you will no longer be able to double click on it to get its child associations or instances. To query the information on this item again, you need to select it, right click on the mouse and select Refresh from the context sensitive menu. If the Refresh option if not available, you need to select Refresh on the item’s parent.
The Computer System Object
One of the root objects in the browser view is the Computer System object. This object is of particular interest for this topic because it is, by nature, associated with most other system components it holds! For this reason, browsing through its computer system associations will be quite informative.
|Locate and double-click on the Computer System root object and then double click on the only instance which results from it. You will see three main association roles: Part Component, Record and Settings. Each role holds a large set of child associations.
Under Part Component, locate and double click on the System Devices association. As you will see, quite a lot of devices are associated with a computer system. Using this System Devices association can be useful to see a snapshot of what exists on a remote machine.
This list includes a new item that we have not covered yet. The items with the icon are neither object classes, instances or associations. They are simply categories used to group objects of certain types. You can click on a category item to view its description in the Information Panel.
Below is a legend of the miscellaneous generic icons you will find when browsing this view:
Tip: It is sometimes desirable to know an object’s WMI class name to find the object in the Namespace & Classes view or to construct a query string. You can quickly copy the actual WMI class name of the selected object into the clipboard by pressing the CTRL+C keys.
Adding a child object to the list of root objects
As you browse through an object’s associations, you can select an object and set it as a root object for easy access at a later time. To do so, select the object, right click on the mouse and select Add as root object from the context sensitive menu. You can click on the Add Root Object button in the ribbon bar. You can only add an object or an association to the list of root objects. You cannot add an association role, an object instance or an object category.
For more information, see Modifying the list of Root Objects.
Executing Management Tasks
Many objects allow for the execution of management tasks. This is a very powerful feature of WMI. You can use WMIX to execute most of the essential remote administration tasks on your machines: scheduling a new job, killing a process, installing a new software product, or modifying the TCP/IP settings of a network adapter.
The Information Panel has a special section named Available Tasks which is populated with the management tasks available for the currently selected object in the Browser view. To execute a task, simply click on its entry in the Information Panel or right click on the mouse and select the task from the context sensitive menu.
Note: WMIX allows you to execute a task on only one machine at a time. If you need to perform systems management tasks on multiple remote desktops or servers at once, use Goverlan Reach’s IT Process Automation framework. It is a sophisticated tool for sysadmins which generates reports, modifies properties and executes methods on large sets of machines. See: WMIX vs Goverlan Remote Access Software for more details.
When you select to execute a task, the execution wizard starts to present you with information about the task. If applicable, you will be prompted for the necessary input parameters. For instance, the execution wizard for the Createtask of the Share root object looks like this:
The list of arguments will vary depending on the task to be executed. If a task doesn’t require any input parameter, ‘no parameter needed…’ will be displayed instead of the parameter grid.
Entering input parameters
If a task has a set of input parameters, WMIX displays them in a grid. Each input parameter has a data type associated with it. The WMIX property grid is fully aware of what type of information is required and will only accept appropriate values. To see more information about an individual parameter, click on it and the description of the parameter will appear at the bottom of the property grid. To set an input parameter, click on the cell located on the right of the parameter name and enter the desired value.
For executing a standard task, many parameters do not require a value. You simply enter the parameters which you believe to be essential and try to execute the task. To leave a parameter blank, the value should be left at: . If you have modified an entry and wish to revert it back to , follow these instructions:
- For string value types, retype the string ”. This is not the same as setting the value field blank as empty strings are considered a value.
- For boolean value types, highlight the TRUE or FALSE value and press the DEL key. Then switch to another parameter. The boolean value will reset itself to .
- For number value types, remove the existing entry and switch to another parameter. The number will reset itself to .
- For arrays of values, delete all instances of the array elements.
Tip: Some tasks are configured in WMI to have a set of optional parameters. In such a case, WMIX inserts these parameters in a separate Argument (Optional)category. However, this does not mean that every parameter in the Argumentcategory is required. For instance, the Create task of the Process object has three input parameters: Command Line, Current Directory and Process Startup Information. None of these parameters have been marked as optional, however, only the first one is required.
Executing the task
Once you have entered the appropriate parameters, click on the Executebutton. You will be prompted one last time before the execution starts. Once started, the property grid disappears and the message Executing. Please Wait…is displayed flashing.
Some tasks may take a second to complete whereas some tasks may take longer (such as the remote installation of a software product). If the execution is not completed in a reasonable amount of time, you can click on the Abortbutton. However, aborting will not stop the execution of the task, it only stops waiting for its output.
Once the task execution is complete, the Execution Wizard displays the output results. Some output results are as simple as The operation completed successfully or Return value XX – Error Message, while some output results include a full set of return values, in which case, the Execution Wizard displays them in a property grid.
If an error is returned after the execution of a task, the <
Executing the task via a Script
To execute the task via a script, click on the Export as a Script button once you have defined all parameters. WMIX will then generate a WMI script which calls the execution of the focused method with the configured parameters.
Modifying the List of Root Objects
The WMIX Browser view opens with a default list of pre-defined root objects. However, you can customize this list by removing or adding objects. The Browser view accepts WMI classes, associations and queries as root objects.
Adding a new root object
You can add a new root object in three ways:
- Click on the Search WMI… button in the main toolbar. Search for the object you want to add, select it and click on OK in the Search window. For more information about the search feature, see Searching for Objects.
- Right click within an empty area of the Browser view and select ‘Add new root class object’. The Search WMI window opens. Search for the object you want to add, select it and click on OK in the Search window. For more information about the search feature, see Searching for Objects.
- You can also select any child object already queried in the browser view, right click on the mouse and select Add as root object from the context sensitive menu. You can only add associations and parent objects to the list of root objects. You cannot add an object instance, an association role or an object category (see Displaying Object Associations.)
Root objects versus child objects
When browsing through child associations, querying an object or an association only returns the instances which relate to the parent object through the selected association. For instance, querying the instances of the association Share to Directory for the share Goverlan results in a single entry ‘c:datapjtechsoftwaregoverlan’. It is the only instance of Share to Directorywhich relates to the parent object Goverlan.
However, if you select to add the association object Share to Directory to the list of root objects and to query it, the association is no longer bound to a parent object and all instances of Share to Directory which exists on the system are returned.
Similarly, if you add the Directory object to the list of root objects and query it, all instances of a directory in the system will be eventually returned. Due to the potentially large number of directory objects on a file system, we do not advise to set the Directory object as a root object since it will take too long to receive a result set from such a query.
Adding a new root Query object
|You can also add a WMI query object to the list of root objects. A WMI Query object is a powerful means to fine tune the information to be queried. You can restrict the attributes of an object to be returned and set conditions to narrow down the result set. Describing the full potential of a WMI query is outside the scope of this section. For more information, refer to Query WMI view.
To add a root Query object, click on Add Root Query Object button in the ribbon bar or right click in an empty area of the Browser view and select Add new root query object. Enter the name and query string of the object to add and click on OK.
Tip: When you select a root query object, the Information Panel shows its detailed information, including the query string.
Modifying a root Query object
To modify the configuration of a root query object, select it and:
- Right click on the mouse and select Modify Query… from the context sensitive menu.
- Click on the Modify Query… link located under Available Tasks in the Information Panel.
Tip: The pre-defined list of root objects includes two root query objects as examples: Computer System Identity and Network Adapters – Connected. TheComputer System Identity simply returns the essential attributes of the Win32_ComputerSystemProduct class object. The Network Adapters – Connected query uses a condition to only return the active network adapters on a system. Click on these root objects to look at the query string.
Adding new root objects from outside the Browser View
When navigating though the WMI namespaces and classes, you can pick any object and select Add Class to Browser View from its context sensitive menu. When entering query strings in the WMI Query view, you can click on the Add Query to Browser View button located at the top right corner of the view.
Removing a root object
To remove a root object, select it and:
- Right click on the mouse and select Remove from root objects from the context sensitive menu.
- Select View >> Remove from Root Objects from the main menu.
Note: You cannot remove the Computer System root object.
Resetting the list of root objects
At any time, you can reset the list of root objects to its pre-defined set. To do so, select View >> Reset View to Default from the main menu.