Delphi: Wrap ShellExecute for Windows and OSX in Firemonkey application

Example class that wraps the execution like ShellExeceute for Firemonkey (Windows and OSX):

unit DAPlatform;

interface

uses
{$IFDEF MSWINDOWS}
  Winapi.ShellAPI, Winapi.Windows;
{$ENDIF MSWINDOWS}
{$IFDEF POSIX}
  Posix.Stdlib;
{$ENDIF POSIX}

type
  TDAPlatform = class
    class procedure Open(sCommand: string);
  end;

implementation

class procedure TDAPlatform.Open(sCommand: string);
begin
{$IFDEF MSWINDOWS}
  ShellExecute(0, 'OPEN', PChar(sCommand), '', '', SW_SHOWNORMAL);
{$ENDIF MSWINDOWS}
{$IFDEF POSIX}
  _system(PAnsiChar('open ' + AnsiString(sCommand)));
{$ENDIF POSIX}
end;

end.


Datenschutzerklärung | Impressum