Try this:
uses
System.SysUtils, System.IOUtils, Winapi.Windows, Winapi.ShellAPI;
procedure OpenPdf(const AFileName: string);
var
LURL: string;
begin
LURL := TPath.GetFullPath(AFileName).Replace('\', '/', [rfReplaceAll]);
LURL := 'file://' + LURL;
ShellExecute(0, 'open', PChar(LURL), nil, nil, SW_SHOWNORMAL);
end;