-1

如何使用 Delphi XE2 显示 Windows 版本信息?我在“Uses”中添加了“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 本机信息。我不需要任何格式。

4

1 回答 1

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];
于 2013-03-18T19:43:20.907 回答