Delphi 11 Alexandria Defines
uses
System.IOUtils;
procedure TForm1.Button1Click(Sender: TObject);
begin
case TOSVersion.Platform of
TOSVersion.TPlatform.pfWindows:
PlatformPath := ‘Windows’;
TOSVersion.TPlatform.pfMacOS:
PlatformPath := ‘macOS’;
TOSVersion.TPlatform.pfiOS:
PlatformPath := ‘iOS’;
TOSVersion.TPlatform.pfAndroid:
PlatformPath := ‘Android’;
TOSVersion.TPlatform.pfWinRT:
PlatformPath := ‘WinRT’;
TOSVersion.TPlatform.pfLinux:
PlatformPath := ‘Linux’
else
PlatformPath := ‘Unexpected platform’
end;
Memo1.Lines.Add(‘TPlatform: ‘+PlatformPath);
Memo1.Lines.Add(TOSVersion.ToString);
{$IF DEFINED(IOS)}
Memo1.Lines.Add(‘Defined: IOS’);
{$ENDIF}
{$IF DEFINED(IOS32)}
Memo1.Lines.Add(‘Defined: IOS32’);
{$ENDIF}
{$IF DEFINED(IOS64)}
Memo1.Lines.Add(‘Defined: IOS64’);
{$ENDIF}
{$IF DEFINED(ANDROID)}
Memo1.Lines.Add(‘Defined: ANDROID’);
{$ENDIF}
{$IF DEFINED(ANDROID32)}
Memo1.Lines.Add(‘Defined: ANDROID32’);
{$ENDIF}
{$IF DEFINED(ANDROID64)}
Memo1.Lines.Add(‘Defined: ANDROID64’);
{$ENDIF}
{$IF DEFINED(MACOS)}
Memo1.Lines.Add(‘Defined: MACOS’);
{$ENDIF}
{$IF DEFINED(MACOS64)}
Memo1.Lines.Add(‘Defined: MACOS64’);
{$ENDIF}
{$IF DEFINED(OSX)}
Memo1.Lines.Add(‘Defined: OSX’);
{$ENDIF}
{$IF DEFINED(OSX64)}
Memo1.Lines.Add(‘Defined: OSX64’);
{$ENDIF}
{$IF DEFINED(MSWINDOWS)}
Memo1.Lines.Add(‘Defined: MSWINDOWS’);
{$ENDIF}
{$IF DEFINED(WIN32)}
Memo1.Lines.Add(‘Defined: WIN32’);
{$ENDIF}
{$IF DEFINED(WIN64)}
Memo1.Lines.Add(‘Defined: WIN64’);
{$ENDIF}
{$IF DEFINED(LINUX)}
Memo1.Lines.Add(‘Defined: LINUX’);
{$ENDIF}
{$IF DEFINED(LINUX32)}
Memo1.Lines.Add(‘Defined: LINUX32’);
{$ENDIF}
{$IF DEFINED(LINUX64)}
Memo1.Lines.Add(‘Defined: LINUX64’);
{$ENDIF}
{$IF DEFINED(DCC)}
Memo1.Lines.Add(‘Defined: DCC’);
{$ENDIF}
{$IF DEFINED(CONSOLE)}
Memo1.Lines.Add(‘Defined: CONSOLE’);
{$ENDIF}
{$IF DEFINED(POSIX)}
Memo1.Lines.Add(‘Defined: POSIX’);
{$ENDIF}
{$IF DEFINED(POSIX32)}
Memo1.Lines.Add(‘Defined: POSIX32’);
{$ENDIF}
{$IF DEFINED(POSIX64)}
Memo1.Lines.Add(‘Defined: POSIX64’);
{$ENDIF}
{$IF DEFINED(CPUX86)}
Memo1.Lines.Add(‘Defined: CPUX86’);
{$ENDIF}
{$IF DEFINED(CPUX64)}
Memo1.Lines.Add(‘Defined: CPUX64’);
{$ENDIF}
{$IF DEFINED(CPU32BITS)}
Memo1.Lines.Add(‘Defined: CPU32BITS’);
{$ENDIF}
{$IF DEFINED(CPU64BITS)}
Memo1.Lines.Add(‘Defined: CPU64BITS’);
{$ENDIF}
{$IF DEFINED(CPUARM)}
Memo1.Lines.Add(‘Defined: CPUARM’);
{$ENDIF}
{$IF DEFINED(CPUARM32)}
Memo1.Lines.Add(‘Defined: CPUARM32’);
{$ENDIF}
{$IF DEFINED(CPUARM64)}
Memo1.Lines.Add(‘Defined: CPUARM64’);
{$ENDIF}
{$IFDEF DEBUG}
Memo1.Lines.Add(‘DEBUG is Defined’);
{$ELSE}
Memo1.Lines.Add(‘DEBUG is Not Defined’);
{$ENDIF}
end;