获取 CPU、RAM 和 GPU 信息 - UWP 应用
Posted
技术标签:
【中文标题】获取 CPU、RAM 和 GPU 信息 - UWP 应用【英文标题】:Get CPU, RAM and GPU information - UWP App 【发布时间】:2018-06-20 00:17:59 【问题描述】:是否可以在 UWP 应用程序中获取计算机的 CPU、GPU 和 RAM 的信息? E 在文本块中显示此信息。
我想知道处理器型号(例如:Intel Core i7 xxxx)和总 RAM
【问题讨论】:
你的答案在这里 => ***.com/questions/37959610/… What are the possibillities to get overall CPU percentage usage的可能重复 @Kaikon 我没有解释清楚,我想知道处理器型号(例如:Intel Core i7 xxxx),以及总RAM和GPU(例如:NVidia GTxxxx) @pmcilreavy 我没有解释清楚,我想知道处理器型号(例如:Intel Core i7 xxxx),以及总 RAM 和 GPU(例如:NVidia GTxxxx) 【参考方案1】:我想知道处理器型号(例如:Intel Core i7 xxxx)和总 RAM
如果在这种情况下,UWP 应用无法满足您的需求。在 UWP 中,由于是沙盒,因此无法获取系统 CPU、GPU 和 RAM 信息。
对于 RAM,UWP 只能使用前面提到的 MemoryManager
类访问有关当前应用内存使用情况的信息。
关于 GPU 信息,目前 UWP 应用中没有 API 可以直接访问 GPU。您可能需要使用 DirectX 创建 UWP 应用并通过 DirectX 访问信息。您可能会找到一些相关示例here。
由于 Win32 可以做到这一点,作为建议,您可以尝试使用 Desktop Bridge 将 Win32 桌面应用程序转换为 UWP。如何在 Win32 中获取这些信息可以参考this。
【讨论】:
【参考方案2】:您将需要使用 [DllImport("kernal32")] 获取完整信息。 This question 有你需要的实现。 This question 回答了如何更轻松地获得 RAM 使用率和 CPU 使用率。
【讨论】:
我没有解释清楚,我想知道处理器型号(例如:Intel Core i7 xxxx),以及总RAM和GPU(例如:NVidia GTxxxx)【参考方案3】:您可以使用以下代码获取至少一些设备信息,其中包括 CPU 型号。它将包括很多设备,其中之一是 CPU。
string result = "Devices\r\n";
DeviceInformationCollection dic = await DeviceInformation.FindAllAsync(DeviceClass.All);
foreach (var deviceinfo in dic)
result += "\r\nID: " + deviceinfo.Id + ", Name: " + deviceinfo.Name + ", Kind: " + deviceinfo.Kind + ", EnclosureLocation: " + deviceinfo.EnclosureLocation + ", IsEnabled: " + deviceinfo.IsEnabled;
【讨论】:
以上是关于获取 CPU、RAM 和 GPU 信息 - UWP 应用的主要内容,如果未能解决你的问题,请参考以下文章
如何在没有 exec 的情况下获取 CPU 使用率和 RAM 使用率?