12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- [Code]
- var
- WindowsVersion: TWindowsVersion;
- procedure initwinversion();
- begin
- GetWindowsVersionEx(WindowsVersion);
- end;
- function exactwinversion(MajorVersion, MinorVersion: integer): boolean;
- begin
- Result := (WindowsVersion.Major = MajorVersion) and (WindowsVersion.Minor = MinorVersion);
- end;
- function minwinversion(MajorVersion, MinorVersion: integer): boolean;
- begin
- Result := (WindowsVersion.Major > MajorVersion) or ((WindowsVersion.Major = MajorVersion) and (WindowsVersion.Minor >= MinorVersion));
- end;
- function maxwinversion(MajorVersion, MinorVersion: integer): boolean;
- begin
- Result := (WindowsVersion.Major < MajorVersion) or ((WindowsVersion.Major = MajorVersion) and (WindowsVersion.Minor <= MinorVersion));
- end;
- function exactwinspversion(MajorVersion, MinorVersion, SpVersion: integer): boolean;
- begin
- if exactwinversion(MajorVersion, MinorVersion) then
- Result := WindowsVersion.ServicePackMajor = SpVersion
- else
- Result := true;
- end;
- function minwinspversion(MajorVersion, MinorVersion, SpVersion: integer): boolean;
- begin
- if exactwinversion(MajorVersion, MinorVersion) then
- Result := WindowsVersion.ServicePackMajor >= SpVersion
- else
- Result := true;
- end;
- function maxwinspversion(MajorVersion, MinorVersion, SpVersion: integer): boolean;
- begin
- if exactwinversion(MajorVersion, MinorVersion) then
- Result := WindowsVersion.ServicePackMajor <= SpVersion
- else
- Result := true;
- end;
- [Setup]
|