VER_PLATFORM_WIN32s System is Win32s. VER_PLATFORM_WIN32_WINDOWS System is Windows 95. VER_PLATFORM_WIN32_NT System is Windows NT.
关键是一个API getversionex ,这是只支持到Win2k的函数,你可以自己把XP的判断也加进去. function GetSystem:string; var getver:osversioninfo; //ret:longbool; begin getver.dwOSVersionInfoSize :=148; //ret:= getversionex(getver); if getver.dwPlatformId =ver_platform_win32_windows then GetSystem:='Windows'; IF GETVER.dwPlatformId =VER_PLATFORM_WIN32_NT THEN (if getver.dwMajorVersion=5 then GetSystem:='Windows 2000' else GetSystem:='Windows NT'); end;
它的值的含义如下:
Value Meaning
VER_PLATFORM_WIN32s System is Win32s.
VER_PLATFORM_WIN32_WINDOWS System is Windows 95.
VER_PLATFORM_WIN32_NT System is Windows NT.
function GetSystem:string;
var getver:osversioninfo;
//ret:longbool;
begin
getver.dwOSVersionInfoSize :=148;
//ret:=
getversionex(getver);
if getver.dwPlatformId =ver_platform_win32_windows then
GetSystem:='Windows';
IF GETVER.dwPlatformId =VER_PLATFORM_WIN32_NT THEN
(if getver.dwMajorVersion=5 then GetSystem:='Windows 2000' else GetSystem:='Windows NT');
end;