Notice Of Closure

Please note that this website is due to close down on 15th June 2020.

In the interim I will try to move as much content as possible over to my GitHub account. Thanks to everyone who has supported the site over the years.

» Help

Open documents and URLs in their associated applications

   

If you like how Windows Explorer and File Manager lets you open documents just by double clicking on them, without opening the associated program first, here's how to achieve similar functionality from your Delphi program:

program ShellExe;

uses
  WinTypes, ShellAPI;

procedure OpenObject(sObjectPath: string);
begin
  ShellExecute(0, nil, PChar( sObjectPath ), nil, nil, SW_NORMAL);
end;

begin
  OpenObject('c:\my_docs\report.txt');
end.

Now you can open any type of document from your program without knowing which program is associated with it.

Don't forget that web site addresses and other URLs also have programs associated with them. So, if you want to open the default browser to a specific URL, simply call OpenObject() with the absolute URL as follows:

OpenObject('http://www.chami.com/tips/');

You can also use the same function to run executable programs, for example:

OpenObject('notepad.exe');
To run programs and wait until they have completed see "Execute a program and wait until it is done".
Author: Unknown
Added: 2007-06-02
Last updated: 2007-10-12

« Return to contents »