Openhardwaremonitor GPU电压使用值

时间:2018-08-03 08:41:26

标签: c# windows gpu system openhardwaremonitor

我使用Openhardwaremonitor尝试查找显示卡的电压值。

Computer computer = new Computer() {  GPUEnabled=true};
computer.Open();
foreach (IHardware hardware in computer.Hardware)
{
     hardware.Update();
     foreach (ISensor sensor in hardware.Sensors)
     {
            if (sensor.SensorType == SensorType.Voltage)
            {
               Console.WriteLine("{0}: {1} - {2}", sensor.Name, sensor.Value, sensor.SensorType);

            }

      }
}

但是它没有作为一个价值出现。传感器有问题吗?可能是什么原因?

1 个答案:

答案 0 :(得分:0)

您的传感器没有问题。

您是否尝试过以管理员模式构建和运行项目,因为这样做会很有帮助

如果您使用的dll库(OpenHardwareMonitor.dll)不能正常工作,那么当涉及到电压时,它不支持大多数GPU和CPU。.不幸的是,但是当我尝试使用该库时我兄弟的笔记本电脑给了我gpu电压,但是在我的笔记本电脑上.. nahh在该库中看不到电压线(兼容性问题)

GPU-Z和CPU-Z以及aida64和HardwareInfo似乎可以检测到电压,但是该库无法检测到


这是我完全完成的(C#表单应用程序)提取项目,并在您的Visual Studio或您使用的其他IDE中打开(.sln)项目,看是否有任何区别

http://www.mediafire.com/file/ru84featrnynqb2/HardwareMonitor.zip/file

别忘了签出:

获取有关GPU的信息(电压,时钟,风扇使用情况等)

我认为.Net Framework没有提供这种能力来获取有关GPU的详细信息。即使您使用C#语言,也必须调用其他一些API。并且不同的GPU可能具有完全不同的API,可能没有获取所有这些GPU信息的标准方法。因此,我认为您首先需要弄清楚要处理哪种GPU,然后从提供程序中查找API。据我所知,您可能需要使用DirectX。

为简化开发,一种快捷方式是利用GPU-Z的库,为非托管的GPU-Z的库创建一个包装器类,然后在您的C#项目中使用它。搜索“ C#GPU-Z包装器”,您可能会找到所需的内容。


获取有关CPU的信息

http://msdn.microsoft.com/en-us/library/aa394084.aspx

我认为Win32库是C#附带的,请尝试一下

(它提供电压和热管以及风扇信息,还有很多..只是用谷歌搜索)

希望能对您有所帮助。