请参考
function TCommunicationForm.MyGetVersion: String;
var
  VersionInfo : TOSVersionInfo;
  OSName      : String;
begin
  VersionInfo.dwOSVersionInfoSize := SizeOf( TOSVersionInfo );
  if Windows.GetVersionEx( VersionInfo ) then
  begin
    with VersionInfo do
    begin
      case dwPlatformId of
        VER_PLATFORM_WIN32s   : OSName := 'Win32s';
        VER_PLATFORM_WIN32_WINDOWS : OSName := 'Windows 95';
        VER_PLATFORM_WIN32_NT      : OSName := 'Windows NT';
      end;
      Result:=OSName+' Version '+IntToStr( dwMajorVersion )+'.'+IntToStr(dwMinorVersion)+#13#10' (Build ' + IntToStr(dwBuildNumber)+': '+szCSDVersion+')';
    end;
  end
  else
    Result:='';
end;