#include #include #include #include "debug.h" void win32_print_version(void); void win32_print_version(void) { char *verStr; unsigned int Version = 0; unsigned int Build = 0; Version = GetVersion(); if (Version < 0x80000000) Build = (DWORD)(HIWORD(Version)); if (IsWindows10OrGreater()) { if (Build < 22000){ verStr = strdup("Windows 10"); }else{ verStr = strdup("Windows 11"); } }else if (IsWindows8Point1OrGreater()){ verStr = strdup("Windows 8.1"); }else if (IsWindows8OrGreater()){ verStr = strdup("Windows 8"); }else if (IsWindows7SP1OrGreater()){ verStr = strdup("Windows 7 Service Pack 1"); }else if (IsWindows7OrGreater()){ verStr = strdup("Windows 7"); }else if (IsWindowsVistaSP2OrGreater()){ verStr = strdup("Windows Vista Service Pack 2"); }else if (IsWindowsVistaSP1OrGreater()){ verStr = strdup("Windows Vista Service Pack 1"); }else if (IsWindowsVistaOrGreater()){ verStr = strdup("Windows Vista"); }else{ verStr = strdup("unknown"); } printf ("Microsoft %s", verStr); if (IsWindowsServer()){ printf(" Server"); } if (Version < 0x80000000){ printf(" (Build %d)\n", Build); } }