使用c#,我想获取连接到我服务器的计算机的OS名称,磁盘空间,CPU使用率。 我可以使用以下代码获取连接的计算机名称
foreach (DirectoryEntry computers in root.Children)
{
foreach (DirectoryEntry computer in computers.Children)
{
if (computer.Name != "Schema")
{
string value = computer.Name;
}
}
}
但不知道要获取已连接计算机的操作系统名称,磁盘空间, CPU使用率
答案 0 :(得分:0)
操作系统名称
向Microsoft.VisualBasic添加.NET引用。然后致电:
new Microsoft.VisualBasic.Devices.ComputerInfo().OSFullName
来自MSDN:
此属性返回有关操作系统的详细信息 如果Windows Management Instrumentation(WMI)安装在 电脑。否则,此属性返回与 My.Computer.Info.OSPlatform属性,它提供的详细信息较少 WMI可以提供的信息。WMI可以提供的信息。
磁盘空间
private long GetTotalFreeSpace(string driveName)
{
foreach (DriveInfo drive in DriveInfo.GetDrives())
{
if (drive.IsReady && drive.Name == driveName)
{
return drive.TotalSize;
}
}
return -1;
}
CPU使用率
您可以使用PerformanceCounter中的System.Diagnostics类。
像这样初始化:
PerformanceCounter cpuCounter;
cpuCounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");
像这样消费:
public string getCurrentCpuUsage(){
return cpuCounter.NextValue()+"%";
}
参考