Delphi XE TOSVersion - 获取有关当前操作系统的信息(平台、版本)
{该文首发于博客园 滔Roy,无须授权即可转发,请自觉保留头部申明}
Delphi XE TOSVersion - 获取有关当前操作系统的信息(平台、版本)
原型:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | 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示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | 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 希望内容对你有所帮助,谢谢!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
2021-08-10 Delphi 系统[3]关键字和保留字 requires、contains
2021-08-10 Delphi 系统[2]关键字和保留字 program、library、package、unit
2021-08-10 Delphi 系统[1]关键字和保留字