我有一个带有一个 TEdit 和一个 TButton 的表单。我正在尝试确定操作系统架构。因此,我按照 Embarcadero 论坛的建议定义了以下代码:
function OSArchitectureToStr(const a: TOSVersion.TArchitecture): string;
function OSPlatformToStr(const p: TOSVersion.TPlatform): string;
function PlatformFromPointer: integer;
.
.
.
.
.
function OSArchitectureToStr(const a: TOSVersion.TArchitecture): string;
begin
case a of
arIntelX86: Result := 'Intel X86';
arIntelX64: Result := 'Intel X64';
else
Result := 'UNKNOWN OS Aarchitecture';
end;
end;
function OSPlatformToStr(const p: TOSVersion.TPlatform): string;
begin
case p of
pfWindows: Result := 'Windows';
pfMacOS: Result := 'MacOS';
else
Result := 'UNKNOWN OS Platform';
end;
end;
function PlatformFromPointer: integer;
begin
Result := SizeOf(Pointer) * 8;
end;
.
.
.
.
.
procedure TMainForm.BitBtn1Click(Sender: TObject);
begin
Edit1.Text := OSPlatformToStr(TOSVersion.Platform) + ' ' + IntToStr(PlatformFromPointer) + ' Bit';
end;
但问题是尽管它是 64 位操作系统,但它总是导致 32 位操作系统。请帮我。