Новая реализация функции получения версии системы GetVersionEx():
BOOL GetVersionEx ( LPOSVERSIONINFO lpVersionInfo // указатель на структуру, //в которую будет получена информация. );
А вот и структура :-)
typedef struct _OSVERSIONINFO { DWORD dwOSVersionInfoSize; // размер структуры DWORD dwMajorVersion; // идентификатор операционной системы DWORD dwMinorVersion; // идентификатор версии DWORD dwBuildNumber; // идентификатор сборки DWORD dwPlatformId; // платформа TCHAR szCSDVersion[128]; // дополнительная информация об операционной системе } OSVERSIONINFO;
Перед использованием этой функции надо указать размер структуры в параметре dwOSVersionInfoSize используя sizeof(OSVERSIONINFO).
#include "stdafx.h" #include "windows.h" #include "iostream.h" void main() { OSVERSIONINFO osvi; ZeroMemory(&osvi, sizeof(OSVERSIONINFO)); osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); GetVersionEx((OSVERSIONINFO*)&osvi); }