试图检测视频卡gpu temp但无法添加引用nvcpl.dll获取错误"无法添加"

时间:2011-12-26 03:31:55

标签: c# nvidia

我想检测我的显卡gpu温度。 所以我想用nvcpl.dll添加它作为我的代码的参考。

我正在使用visual studio 2010 express和windows 7。

我在:C:\ Windows \ System32中找到了文件nvcpl.dll 但是当我试图添加文件作为参考时,我会发现错误:

“无法添加对d:\ nvcpl.dll的引用。请确保该文件可访问,并且它是有效的程序集或COM组件”

我还尝试将文件首先复制到d:\ 我在谷歌尝试了示例和代码示例。

然后无法弄清楚如何使用dll。

1 个答案:

答案 0 :(得分:0)

你可以在C#中找到工作源代码,它可以从Open Hardware Monitorhttp://code.google.com/p/open-hardware-monitor/项目中获取GPU温度(以及更多)

  

打开硬件监视器

     

Open Hardware Monitor是一款免费的开源软件,可以监控   温度传感器,风扇速度,电压,负载和时钟速度   计算机。

     

Open Hardware Monitor支持大多数硬件监控芯片   在今天的主板上找到。可以通过监视CPU温度   阅读英特尔和AMD处理器的核心温度传感器。该   ATI和Nvidia显卡的传感器以及SMART硬盘   温度可以显示。监视的值可以显示在   主窗口,可自定义的桌面小工具或系统中   托盘。 Open Hardware Monitor软件在32位和64位上运行   Microsoft Windows XP / Vista / 7以及任何基于x86的Linux操作系统   没有安装的系统。

<击> 您需要在此处使用类似于示例代码的用户互操作: http://www.mp3car.com/coders-corner/107386-vb-net-screenorientation-angle180.html

<击>

从我能够快速找到的{vv} API文件(PDF from 2005)看来,您实际需要的是:

<强> NvCplGetThermalSettings()

功能原型

BOOL CDECL NvCplGetThermalSettings
(IN UINT nWindowsMonitorNumber,
OUT DWORD* pdwCoreTemp,
OUT DWORD* pdwAmbientTemp,
OUT DWORD* pdwUpperLimit);

UINT中的参数nWindowsMo​​nitorNumber - 显示的显示数字 Windows显示属性 - >设置页面。

值为0表示当前的主Windows显示设备。

  • DWORD *必须是有效的指针 -
  • pdwCoreTemp - 以摄氏度为单位的GPU温度。
  • pdwAmbientTemp - 环境温度(摄氏度)。
  • pdwUpperLimit - GPU温度规范的上限。

返回值成功时为True。 失败时是假的。