API函数:GetVersionEx() void __fastcall TForm1::FormCreate(TObject *Sender) { OSVERSIONINFO info ; info.dwOSVersionInfoSize = sizeof (info) ; GetVersionEx (&info) ;
switch (info.dwPlatformId) { case VER_PLATFORM_WIN32s: Label1->Caption = "System: Windows Win 32s" ; break ; case VER_PLATFORM_WIN32_WINDOWS: Label1->Caption = "System: Windows 95" ; break ; case VER_PLATFORM_WIN32_NT: Label1->Caption = "System: Windows NT" ; break ; default: Label1->Caption = "System: Unknown" ; break ; }
Label2->Caption = String ("Version: ") + String ((int) info.dwMajorVersion) + "." + String((int)info.dwMinorVersion) ; Label3->Caption = String ("Build: ") + String ((int) (info.dwBuildNumber & 0xFFFF)) ; Label4->Caption = String ("System Info: '") + info.szCSDVersion + "'" ; } 或者
The following code fragment illustrates how to extract information from the GetVersion return value:
dwVersion = GetVersion();
// Get major and minor version numbers of Windows
dwWindowsMajorVersion = (DWORD)(LOBYTE(LOWORD(dwVersion))); dwWindowsMinorVersion = (DWORD)(HIBYTE(LOWORD(dwVersion)));
// Get build numbers for Windows NT or Win32s
if (dwVersion < 0x80000000) // Windows NT dwBuild = (DWORD)(HIWORD(dwVersion)); else if (dwWindowsMajorVersion < 4) // Win32s dwBuild = (DWORD)(HIWORD(dwVersion) & ~0x8000); else // Windows 95 -- No build numbers provided
dwBuild = 0;

|