Get instance of WMI class using GetObject, DeviceId property of CIM_Printer
Short VBS code - get a single specified instance of CIM_Printer class or get
a default unnamed instance (singleton) of the class, using one single command GetObject
with exact path of the wmi object.
'https://wutils.com/wmi/Dim wmiObject
Set wmiObject = GetObject( _
"WINMGMTS:\\.\ROOT\CIMV2\ms_409:" + _
"CIM_Printer.PropertyName=""SomeText""")
Wscript.Echo wmiObject.DeviceId 'or other property name, see properties
WMI query - sample windows WQL with C#, DeviceId property of CIM_Printer
Get a specified instance of CIM_Printer by a key, get a default unnamed instance (singleton) of the class or list instances of the class by wmi query using this c# sample code.
//https://wutils.com/wmi///Project -> Add reference -> System.Management//using System.Management;//create a management scope objectManagementScope scope = newManagementScope("\\\\.\\ROOT\\CIMV2\\ms_409");
//create object queryObjectQuery query = newObjectQuery("SELECT * FROM CIM_Printer Where PropertyName=\"SomeText\"");
//create object searcherManagementObjectSearcher searcher =
newManagementObjectSearcher(scope, query);
//get a collection of WMI objectsManagementObjectCollection queryCollection = searcher.Get();
//enumerate the collection.foreach (ManagementObject m in queryCollection)
{
// access properties of the WMI objectConsole.WriteLine("DeviceId : {0}", m["DeviceId"]);
}
WMI query - sample windows WQL with VB.Net, DeviceId property of CIM_Printer
Get a specified instance of CIM_Printer by a key, get a default unnamed instance (singleton) of the class or list instances of the class by wmi query using this VB.Net sample code.
'Project -> Add reference -> System.Management
'Imports System.Management
'Get the namespace management scope
Dim Scope As NewManagementScope("\\.\ROOT\CIMV2\ms_409")
'Get a result of WML query
Dim Query As NewObjectQuery("SELECT * FROM CIM_Printer Where PropertyName="SomeText"")
'Create object searcher
Dim Searcher As NewManagementObjectSearcher(Scope, Query)
'Get a collection of WMI objects
Dim queryCollection AsManagementObjectCollection = Searcher.Get
'Enumerate wmi object
For Each mObject AsManagementObjectIn queryCollection
'write out some property value
Console.WriteLine("DeviceId : {0}", mObject("DeviceId"))
Next