Red de conocimiento informático - Aprendizaje de programación - ¿Cómo leer el uso de la CPU y el tamaño del disco duro en la programación de Lab View?

¿Cómo leer el uso de la CPU y el tamaño del disco duro en la programación de Lab View?

El código es el siguiente (ver comentarios para más detalles):

¿ver copia simple en la impresión del portapapeles?

usando el Sistema;

usando el Sistema .Administración;

espacio de nombres Soyee.Comm

{

/// resumen

/// Información de la computadora

// / /summary

Equipo de clase pública

{

CpuID de cadena pública;

Dirección Mac de cadena pública;

cadena pública DiskID;

cadena pública IpAddress;

cadena pública LoginUserName;

cadena pública ComputerName;

cadena pública SystemType;

p>

cadena pública TotalPhysicalMemory; //Unidad: M

instancia de computadora estática privada;

instancia de computadora estática pública ()

{

if (_instance == null)

_instance = new Computer();

devuelve _instance;

}

Equipo protegido()

{

CpuID=GetCpuID();

MacAddress=GetMacAddress();

DiskID=GetDiskID() ;

IpAddress=GetIPAddress();

LoginUserName=GetUserName();

SystemType=GetSystemType();

TotalPhysicalMemory=GetTotalPhysicalMemory ();

ComputerName=GetComputerName();

}

cadena GetCpuID()

{

intentar

{

//Obtener el código del número de serie de la CPU

cadena cpuInfo = ;//número de serie de la CPU

ManagementClass mc = nueva ManagementClass(Win32_Processor);

ManagementObjectCollection moc = mc.GetInstances();

foreach(ManagementObject mo en moc)

{

cpuInfo = mo.Properties[ProcessorId].Value.ToString();

}

moc=null;

mc= null;

devuelve cpuInfo;

}

catch

{

devuelve desconocido;

<

p>}

finalmente

{

}

}

cadena GetMacAddress()

{

inténtalo

{

//Obtén la dirección de hardware de la tarjeta de red

string mac=;

ManagementClass mc = new ManagementClass(Win32_NetworkAdapterConfiguration);

ManagementObjectCollection moc = mc.GetInstances();

foreach(ManagementObject moc en moc)

{

if ((bool)mo[IPEnabled] == true)

{

mac=mo[MacAddress].ToString();

romper;

}

}

moc=null;

mc=null;

devolver mac ;

}

captura

{

regresar desconocido;

}

finalmente

{

}

}

cadena GetIPAddress()

{

probar

{

//Obtener dirección IP

string st=;

ManagementClass mc = new ManagementClass(Win32_NetworkAdapterConfiguration) ;

ManagementObjectCollection moc = mc.GetInstances();

foreach(ManagementObject mo en moc)

{

if ((bool ) mes [IPEnabled] == verdadero)

{

//st=mo[IpAddress].ToString();

System.Array ar;

ar=(System.Array)(mo.Properties[IpAddress].Value);

st=ar.GetValue(0).

ToString();

romper;

}

}

moc=null;

mc=null ;

regresar st;

}

captura

{

regresar desconocido;

}

finalmente

{

}

}

cadena GetDiskID()

{

inténtalo

{

//Obtén el ID del disco duro

String HDid=;

ManagementClass mc = nueva ManagementClass(Win32_DiskDrive);

ManagementObjectCollection moc = mc.GetInstances();

foreach(ManagementObject mo en moc)

{

HDid = (cadena)mo.Properties[Modelo].Valor;

}

moc=null;

mc=null;

p>

devuelve HDid;

}

captura

{

devuelve desconocido;

}

finalmente

{

}

}

/// resumen

/// Nombre de usuario de inicio de sesión del sistema operativo

/// /summary

/// return/returns

string GetUserName()

{

prueba

{

string st=;

ManagementClass mc = nueva ManagementClass(Win32_ComputerSystem) ;

ManagementObjectCollection moc = mc.GetInstances();

foreach(ManagementObject mo en moc)

{

st=mo[ Nombre de usuario].ToString( );

}

moc=null;

mc=null;

return st;

}

captura

{

regreso desconocido;

}

finalmente

{

}

}

/// resumen

/// tipo de PC

/// / resumen

/// devoluciones/devoluciones

cadena GetSystemType()

{

probar

{

string st=;

ManagementClass mc = nueva ManagementClass(Win32_ComputerSystem);

ManagementObjectCollection moc = mc.GetInstances();

foreach (ManagementObject mo en moc)

{

st

=mo[SystemType].ToString();

}

moc=null;

mc=null;

return st;

}

captura

{

retorno desconocido;

}

finalmente

{

}

}

/// resumen

/// Memoria física

/// /summary

/// devoluciones/devoluciones

cadena GetTotalPhysicalMemory()

{

intentar

{

string st=;

ManagementClass mc = nueva ManagementClass(Win32_ComputerSystem);

ManagementObjectCollection moc = mc.GetInstances();

foreach(ManagementObject mes en moc)