相关疑难解决方法(0)

NvAPI NVAPI_INTERFACE 缺少显式类型

我是 c++/cli 的新手,想为 nvapi 编写一个小的托管包装器。
现在,当尝试访问某些函数(例如 NvAPI_Initialize)时,
Visual Studio 告诉我该函数未定义:

#include "nvapi.h";    

NvAPIStatus Nv_GPU_ThermalAPI::M_NvAPI_GPU_GetThermalSettings(System::UIntPtr gpuHandle,
                                                              Nv_Thermal_Target sensorIndex,
                                                              [Out] array<Nv_GPU_Thermal_Settings^>^% settings)
{
    NvAPI_Status res = NvAPI_Status::NVAPI_OK;             // OK
    NvPhysicalGpuHandle handle;                            // OK
    NV_GPU_THERMAL_SETTINGS *settings;                     // OK

    res = NvAPI_Initialize();                              // Error
    res = NvAPI_GPU_GetThermalStatus(handle, 0, settings); // same here
}
Run Code Online (Sandbox Code Playgroud)

我已经按照此处的描述包含了 nvapi.lib 。

额外的 VS 告诉我,在例如

NVAPI_INTERFACE NvAPI_Initialize();
Run Code Online (Sandbox Code Playgroud)

NVAPI_INTERFACE 缺少显式类型,将假定为 'int'。
尝试构建我的代码此消息变成 C2059: 语法错误 'return' 并且 VS 在 100 个错误后取消构建。我正在使用 VS 2013 Pro。

编辑: NVAPI_INTERFACE 定义如下:
'#define NVAPI_INTERFACE extern …

c++ nvapi visual-studio-2013

4
推荐指数
1
解决办法
799
查看次数

这个宏有什么作用?__success(return> = 0)long

在Windows头文件WinNT.h中,HRESULT定义如下:

typedef __success(return >= 0) long HRESULT;
Run Code Online (Sandbox Code Playgroud)

做了一些研究我了解到"__ccess"宏是Microsoft源代码注释语言SAL的一部分,并在sal.h中定义.但对于我的生活,我无法弄清楚它的作用或它是如何做到的.

提前致谢.

托德

annotations hresult visual-c++

3
推荐指数
1
解决办法
1935
查看次数