managementobjectsearcher management habilitar c# windows winapi wmi

c# - management - wmi windows 10



Cómo leer la colección ManagementObject en WMI usando C# (3)

Eche un vistazo a su consulta de WMI:

SELECT * FROM Win32_OperatingSystem

Significa "obtener todas las instancias de la clase Win32_OperatingSystem e incluir todas las propiedades de la clase". Esta es una pista de que los Win32_OperatingSystem ManagementObject resultantes son envolturas sobre la clase WMI Win32_OperatingSystem . Consulte la Win32_OperatingSystem la Win32_OperatingSystem para saber qué propiedades tiene, qué significan y para decidir cuáles necesita usar en su código.

Si necesita recorrer todas las propiedades disponibles sin codificar de forma rígida sus nombres, use la Properties Propiedades como lo sugirió Giorgi . Aquí hay un ejemplo:

foreach (ManagementObject mo in osDetailsCollection) { foreach (PropertyData prop in mo.Properties) { Console.WriteLine("{0}: {1}", prop.Name, prop.Value); } }

Encontré un código en la red y he estado tratando de obtener más información sobre mo [] .

Estoy tratando de obtener toda la información contenida en ManagementObjectCollection.

Como el parámetro en mo está buscando un valor de cadena que no sé, ¿cómo puedo obtener todos los valores sin conocer sus valores de parámetros? O si quiero obtener todos los valores del indexador relacionados con mo en ManagementObjectCollection

ManagementObjectSearcher objOSDetails = new ManagementObjectSearcher("SELECT * FROM Win32_OperatingSystem"); ManagementObjectCollection osDetailsCollection = objOSDetails.Get(); foreach( ManagementObject mo in osDetailsCollection ) { _osName = mo["name"].ToString();// what other fields are there other than name _osVesion = mo["version"].ToString(); _loginName = mo["csname"].ToString(); }


Puede recorrer todas las propiedades usando Properties