Win32-NTDomain - WMI Python sample
The foundations for Manageability in Windows 2019/2016/2012/2008 and Windows 10/7/XP are Windows Management Instrumentation (WMI; formerly WBEM) and WMI extensions for Windows Driver Model (WDM).
ActiveXperts Network Monitor provides the ability to build monitor check routines based on WMI. ActiveXperts has collected more than a hundred WMI samples. You can use these samples as a base for new check routines you can write yourself.
On this site, you can find many WMI samples.
The Win32_NTDomain WMI class can be used in ActiveXperts Network Monitor to monitor your servers.
Win32-NTDomain
Example(s)
import win32com.client def WMIDateStringToDate(dtmDate): strDateTime = "" if (dtmDate[4] == 0): strDateTime = dtmDate[5] + '/' else: strDateTime = dtmDate[4] + dtmDate[5] + '/' if (dtmDate[6] == 0): strDateTime = strDateTime + dtmDate[7] + '/' else: strDateTime = strDateTime + dtmDate[6] + dtmDate[7] + '/' strDateTime = strDateTime + dtmDate[0] + dtmDate[1] + dtmDate[2] + dtmDate[3] + " " + dtmDate[8] + dtmDate[9] + ":" + dtmDate[10] + dtmDate[11] +':' + dtmDate[12] + dtmDate[13] return strDateTime strComputer = "." objWMIService = win32com.client.Dispatch("WbemScripting.SWbemLocator") objSWbemServices = objWMIService.ConnectServer(strComputer,"root\cimv2") colItems = objSWbemServices.ExecQuery("SELECT * FROM Win32_NTDomain") for objItem in colItems: if objItem.Caption != None: print "Caption:" + ` objItem.Caption` if objItem.ClientSiteName != None: print "ClientSiteName:" + ` objItem.ClientSiteName` if objItem.CreationClassName != None: print "CreationClassName:" + ` objItem.CreationClassName` if objItem.DcSiteName != None: print "DcSiteName:" + ` objItem.DcSiteName` if objItem.Description != None: print "Description:" + ` objItem.Description` if objItem.DnsForestName != None: print "DnsForestName:" + ` objItem.DnsForestName` if objItem.DomainControllerAddress != None: print "DomainControllerAddress:" + ` objItem.DomainControllerAddress` if objItem.DomainControllerAddressType != None: print "DomainControllerAddressType:" + ` objItem.DomainControllerAddressType` if objItem.DomainControllerName != None: print "DomainControllerName:" + ` objItem.DomainControllerName` if objItem.DomainGuid != None: print "DomainGuid:" + ` objItem.DomainGuid` if objItem.DomainName != None: print "DomainName:" + ` objItem.DomainName` if objItem.DSDirectoryServiceFlag != None: print "DSDirectoryServiceFlag:" + ` objItem.DSDirectoryServiceFlag` if objItem.DSDnsControllerFlag != None: print "DSDnsControllerFlag:" + ` objItem.DSDnsControllerFlag` if objItem.DSDnsDomainFlag != None: print "DSDnsDomainFlag:" + ` objItem.DSDnsDomainFlag` if objItem.DSDnsForestFlag != None: print "DSDnsForestFlag:" + ` objItem.DSDnsForestFlag` if objItem.DSGlobalCatalogFlag != None: print "DSGlobalCatalogFlag:" + ` objItem.DSGlobalCatalogFlag` if objItem.DSKerberosDistributionCenterFlag != None: print "DSKerberosDistributionCenterFlag:" + ` objItem.DSKerberosDistributionCenterFlag` if objItem.DSPrimaryDomainControllerFlag != None: print "DSPrimaryDomainControllerFlag:" + ` objItem.DSPrimaryDomainControllerFlag` if objItem.DSTimeServiceFlag != None: print "DSTimeServiceFlag:" + ` objItem.DSTimeServiceFlag` if objItem.DSWritableFlag != None: print "DSWritableFlag:" + ` objItem.DSWritableFlag` if objItem.InstallDate != None: print "InstallDate:" + WMIDateStringToDate(objItem.InstallDate) if objItem.Name != None: print "Name:" + ` objItem.Name` if objItem.NameFormat != None: print "NameFormat:" + ` objItem.NameFormat` if objItem.PrimaryOwnerContact != None: print "PrimaryOwnerContact:" + ` objItem.PrimaryOwnerContact` if objItem.PrimaryOwnerName != None: print "PrimaryOwnerName:" + ` objItem.PrimaryOwnerName` print "Roles:" strList = " " try : for objElem in objItem.Roles : strList = strList + `objElem` + "," except: strList = strList + 'null' print strList if objItem.Status != None: print "Status:" + ` objItem.Status`