错误 1 error C4996: 'GetVersionExW': 被声明为已否决 e:\work\c++test\consoleapplication1\consoleapplication1\main.cpp 365 1 ConsoleApplication1
时间: 2023-07-08 11:47:15 浏览: 166
ConsoleApplication1.cpp
是的,您是对的。从 Windows 8 开始,Microsoft 已经不再建议使用 GetVersionEx 来获取操作系统版本信息。相反,建议使用 VerifyVersionInfo 函数和 Version Helper 函数。
以下是使用Version Helper函数的示例代码:
```c
#include <stdio.h>
#include <windows.h>
#include <VersionHelpers.h>
int main() {
if (IsWindows10OrGreater()) {
printf("This is Windows 10 or later.\n");
}
else if (IsWindows8Point1OrGreater()) {
printf("This is Windows 8.1 or later.\n");
}
else if (IsWindows8OrGreater()) {
printf("This is Windows 8 or later.\n");
}
else if (IsWindows7OrGreater()) {
printf("This is Windows 7 or later.\n");
}
else {
printf("This is an earlier version of Windows.\n");
}
return 0;
}
```
在这个示例中,我们使用了 Version Helper 函数来检查操作系统的版本。例如,IsWindows10OrGreater 函数将返回 true 如果操作系统是 Windows 10 或更高版本。可以使用这些函数来检查不同的操作系统版本,而不需要直接调用底层 Windows API。
阅读全文