Получение версии системы
В следующем примере используются вспомогательные функции API версий для определения версии текущей операционной системы, если это выпуск сервера или клиента, а затем эти сведения отображаются в консоли. Если режим совместимости действует, в примере отображается операционная система, выбранная для обеспечения совместимости приложений.
Использование сведений о версии не является лучшим способом тестирования функции. Вместо этого обратитесь к документации по интересующей функции. Дополнительные сведения о распространенных методах обнаружения признаков см. в разделе Версия операционной системы.
#include <windows.h>
#include <stdio.h>
#include <VersionHelpers.h>
int
__cdecl
wmain(
__in int argc,
__in_ecount(argc) PCWSTR argv[]
)
{
UNREFERENCED_PARAMETER(argc);
UNREFERENCED_PARAMETER(argv);
if (IsWindowsXPOrGreater())
{
printf("XPOrGreater\n");
}
if (IsWindowsXPSP1OrGreater())
{
printf("XPSP1OrGreater\n");
}
if (IsWindowsXPSP2OrGreater())
{
printf("XPSP2OrGreater\n");
}
if (IsWindowsXPSP3OrGreater())
{
printf("XPSP3OrGreater\n");
}
if (IsWindowsVistaOrGreater())
{
printf("VistaOrGreater\n");
}
if (IsWindowsVistaSP1OrGreater())
{
printf("VistaSP1OrGreater\n");
}
if (IsWindowsVistaSP2OrGreater())
{
printf("VistaSP2OrGreater\n");
}
if (IsWindows7OrGreater())
{
printf("Windows7OrGreater\n");
}
if (IsWindows7SP1OrGreater())
{
printf("Windows7SP1OrGreater\n");
}
if (IsWindows8OrGreater())
{
printf("Windows8OrGreater\n");
}
if (IsWindows8Point1OrGreater())
{
printf("Windows8Point1OrGreater\n");
}
if (IsWindows10OrGreater())
{
printf("Windows10OrGreater\n");
}
if (IsWindowsServer())
{
printf("Server\n");
}
else
{
printf("Client\n");
}
}