Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在.NET内核中获取操作系统、计算机处理器信息、总RAM、使用中的RAM等?_C#_.net - Fatal编程技术网

C# 如何在.NET内核中获取操作系统、计算机处理器信息、总RAM、使用中的RAM等?

C# 如何在.NET内核中获取操作系统、计算机处理器信息、总RAM、使用中的RAM等?,c#,.net,C#,.net,我会使用ManagementObjectSearcher,但在.NETCore中似乎没有。如何使用C#with.Net Core获取系统信息,如标题中的信息?我就是这么做的。这不是我最高兴的解决办法,但它比什么都难我在项目中添加了对Microsoft.VisualBasic.dll的引用。在这和环境之间,我得到: Microsoft.VisualBasic.Devices.ComputerInfo computerInfo = new Microsoft.VisualBasic.

我会使用ManagementObjectSearcher,但在.NETCore中似乎没有。如何使用C#with.Net Core获取系统信息,如标题中的信息?

我就是这么做的。这不是我最高兴的解决办法,但它比什么都难我在项目中添加了对Microsoft.VisualBasic.dll的引用。在这和环境之间,我得到:

        Microsoft.VisualBasic.Devices.ComputerInfo computerInfo = new Microsoft.VisualBasic.Devices.ComputerInfo();
        Console.WriteLine(Environment.ProcessorCount);
        Console.WriteLine(computerInfo.AvailablePhysicalMemory);
        Console.WriteLine(computerInfo.AvailableVirtualMemory);
        Console.WriteLine(computerInfo.OSFullName);
        Console.WriteLine(computerInfo.OSPlatform);
        Console.WriteLine(computerInfo.OSVersion);
        Console.WriteLine(computerInfo.TotalPhysicalMemory);
        Console.WriteLine(computerInfo.TotalVirtualMemory);

嗯,我就是这么做的。这不是我最高兴的解决办法,但它比什么都难我在项目中添加了对Microsoft.VisualBasic.dll的引用。在这和环境之间,我得到:

        Microsoft.VisualBasic.Devices.ComputerInfo computerInfo = new Microsoft.VisualBasic.Devices.ComputerInfo();
        Console.WriteLine(Environment.ProcessorCount);
        Console.WriteLine(computerInfo.AvailablePhysicalMemory);
        Console.WriteLine(computerInfo.AvailableVirtualMemory);
        Console.WriteLine(computerInfo.OSFullName);
        Console.WriteLine(computerInfo.OSPlatform);
        Console.WriteLine(computerInfo.OSVersion);
        Console.WriteLine(computerInfo.TotalPhysicalMemory);
        Console.WriteLine(computerInfo.TotalVirtualMemory);

ManagementObjectSearcher
使用WMI,它特别是Windows。由于.NET核心是跨平台的,所以没有这样的API。您可能需要第三方API来获取此信息。这将用于。Net Core目前未实现此功能。因此,我现在无法在.Net Core中获取“硬件”信息?我已经花了一些时间将此功能作为.Net标准2.0库在macOS和Linux中实现
ManagementObjectSearcher
使用专门针对Windows的WMI。由于.NET核心是跨平台的,所以没有这样的API。您可能需要第三方API来获取此信息。这将用于。Net Core目前未实现此功能。因此,我现在无法在.Net Core中获取“硬件”信息?我已经花了一些时间将此功能作为.Net标准2.0库在macOS和Linux中实现。如果您从完整的.NET Framework添加引用,它将不会在只有.NET Core可用的环境中运行如果您从完整的.NET Framework添加引用,它将不会在只有.NET Core可用的环境中运行