Windows版本信息

时间:2013-03-18 19:26:47

标签: delphi delphi-xe2

如何使用Delphi XE2显示Windows版本信息? 我在“使用”中添加了“System.SysUtils”,然后编写了以下代码:

Edit1.Text :=TOSVersion.ToString;
Edit2.Text :=TOSVersion.Name;

以上代码编译成功。但是以下代码无法编译。

Edit3.Text :=TOSVersion.Build;
Edit4.Text :=TOSVersion.Major;
Edit5.Text :=TOSVersion.Minor;
Edit6.Text :=TOSVersion.ServicePackMajor;
Edit7.Text :=TOSVersion.ServicePackMinor;
Edit8.Text :=TOSVersion.TArchitecture;
Edit9.Text :=TOSVersion.Platform;

我的要求是仅显示Windows本机信息。我不需要任何格式化。

1 个答案:

答案 0 :(得分:4)

所有未编译的字段都是整数/枚举,但您尝试将它们按原样分配给基于字符串的属性。您需要将它们格式化为字符串,例如:

const
  ArchitectureStr: array[TOSVersion.TArchitecture] of string = ('Intel X86', 'Intel X64');
  PlatformStr: array[TOSVersion.TPlatform] of string = ('Windows', 'MacOS');

...

Edit3.Text := IntToStr(TOSVersion.Build);
Edit4.Text := IntToStr(TOSVersion.Major);
Edit5.Text := IntToStr(TOSVersion.Minor);
Edit6.Text := IntToStr(TOSVersion.ServicePackMajor);
Edit7.Text := IntToStr(TOSVersion.ServicePackMinor);
Edit8.Text := ArchitectureStr[TOSVersion.Architecture];
Edit9.Text := PlatformStr[TOSVersion.Platform];