windows 如何通过C++获取nvidia驱动版本号
时间: 2023-08-22 17:09:09 浏览: 297
你可以通过使用C++和Windows API来获取NVIDIA驱动程序的版本号。下面是一个示例代码:
```cpp
#include <Windows.h>
#include <iostream>
int main() {
HMODULE nvcuda = LoadLibrary(TEXT("nvcuda.dll"));
if (nvcuda == NULL) {
std::cout << "Failed to load nvcuda.dll" << std::endl;
return 1;
}
DLLGETVERSIONPROC dllGetVersion = (DLLGETVERSIONPROC)GetProcAddress(nvcuda, "DllGetVersion");
if (dllGetVersion == NULL) {
std::cout << "Failed to get DllGetVersion function" << std::endl;
return 1;
}
DLLVERSIONINFO versionInfo;
ZeroMemory(&versionInfo, sizeof(versionInfo));
versionInfo.cbSize = sizeof(versionInfo);
HRESULT result = dllGetVersion(&versionInfo);
if (result != 0) {
std::cout << "Failed to get version information" << std::endl;
return 1;
}
std::cout << "NVIDIA Driver version: " << versionInfo.dwMajorVersion << "."
<< versionInfo.dwMinorVersion << "." << versionInfo.dwBuildNumber << std::endl;
FreeLibrary(nvcuda);
return 0;
}
```
这段代码使用了`LoadLibrary`函数来加载`nvcuda.dll`,然后使用`GetProcAddress`函数获取`DllGetVersion`函数的地址。通过调用`DllGetVersion`函数,可以得到版本信息,包括主版本号、次版本号和构建号。
请注意,此代码仅适用于获取CUDA驱动的版本号,而不是NVIDIA显卡驱动的版本号。如果你需要获取NVIDIA显卡驱动的版本号,你可以考虑使用WMI(Windows Management Instrumentation)来查询相关信息。
阅读全文