Delphi XE TOSVersion - 获取有关当前操作系统的信息(平台、版本)
{该文首发于博客园 滔Roy,无须授权即可转发,请自觉保留头部申明}
Delphi XE TOSVersion - 获取有关当前操作系统的信息(平台、版本)
原型:
type
TOSVersion = record
public type
TArchitecture = (arIntelX86, arIntelX64, arARM32, arARM64);
TPlatform = (pfWindows, pfMacOS, pfiOS, pfAndroid, pfWinRT, pfLinux);
public const
AllArchitectures = [arIntelX86, arIntelX64, arARM32, arARM64];
AllPlatforms = [pfWindows, pfMacOS, pfiOS, pfAndroid, pfWinRT, pfLinux];
private
class var FArchitecture: TArchitecture;
class var FBuild: Integer;
class var FMajor: Integer;
class var FMinor: Integer;
class var FName: string;
class var FPlatform: TPlatform;
class var FServicePackMajor: Integer;
class var FServicePackMinor: Integer;
{$IFDEF LINUX}
class var FPrettyName: string;
class var FLibCVersionMajor: Integer;
class var FLibCVersionMinor: Integer;
{$ENDIF LINUX}
class constructor Create;
public
class function Check(AMajor: Integer): Boolean; overload; static; inline; //返回当前操作系统的版本是否高于或等于特定值。
class function Check(AMajor, AMinor: Integer): Boolean; overload; static; inline;
class function Check(AMajor, AMinor, AServicePackMajor: Integer): Boolean; overload; static; inline; //用于将当前操作系统的版本和为当前操作系统安装的service pack的主版本号与特定值进行比较。
class function ToString: string; static; //返回版本的字符串表示形式。以字符串形式获取操作系统信息。
class property Architecture: TArchitecture read FArchitecture; //表示当前处理器体系结构。例如:Intel x86 或 Intel x64
class property Build: Integer read FBuild; //表示当前操作系统的内部版本号。
class property Major: Integer read FMajor; //表示当前操作系统的主要版本号。例如,Windows 7的主要版本号为6。
class property Minor: Integer read FMinor; //表示当前操作系统的次要版本号.
class property Name: string read FName;
class property Platform: TPlatform read FPlatform; //表示当前平台(Windows、Mac OS)
class property ServicePackMajor: Integer read FServicePackMajor; //表示当前操作系统的主要service pack版本号。
class property ServicePackMinor: Integer read FServicePackMinor; //表示当前操作系统的次要service pack版本号
{$IFDEF LINUX}
class property PrettyName: string read FPrettyName;
class property LibCVersionMajor: Integer read FLibCVersionMajor;
class property LibCVersionMinor: Integer read FLibCVersionMinor;
{$ENDIF LINUX}
end;
描述:
使用TOSVersion获取有关当前操作系统的信息:
- 平台 (Windows, MAC OS X, iOS, Android, or Linux)
- 版本
其他信息:
- 体系结构(Intel x86, Intel x64, ARM 32, or ARM 64)
- 已安装的service pack
不能创建版本变量。TOSVersion表示在应用程序启动时初始化的静态(全局)数据。
TOSVersion提供了检查操作系统版本的方法。
注意:在Linux平台上,输出是内核版本,而不是操作系统的版本。
Delphi示例:
var OSVersion: TOSVersion; begin Memo1.Clear; Memo1.Lines.Add(OSVersion.ToString); Memo1.Lines.Add(Format('Major=%d', [OSVersion.Major])); Memo1.Lines.Add(Format('Minor=%d', [OSVersion.Minor])); Memo1.Lines.Add(Format('Build=%d', [OSVersion.Build])); Memo1.Lines.Add(Format('Architecture=%d', [Ord(OSVersion.Architecture)])); Memo1.Lines.Add(Format('Name=%s', [OSVersion.Name])); Memo1.Lines.Add(Format('Platform=%d', [Ord(OSVersion.Platform)])); Memo1.Lines.Add(Format('ServicePackMajor=%d', [OSVersion.ServicePackMajor])); Memo1.Lines.Add(Format('ServicePackMinor=%d', [OSVersion.ServicePackMinor])); end;
创建时间:2022.08.10 更新时间:
博客园 滔Roy https://www.cnblogs.com/guorongtao 希望内容对你有所帮助,谢谢!