1. Home
  2. Computing & Technology
  3. Delphi Programming

How to open a web site with the default web browser in a NEW window

By Zarko Gajic, About.com

You can easily run an application or a file from Delphi. The Start from Delphi article provides many samples.

When using ShellExecute (as explained in the above article) to open a web site or a htm file with the default web browser you *don't* have the option to specify that you want to start a new instance of the browser - in general an existing window is used.

To make sure a new window is created we need to call the ShellExecute function a little differently - by specifying the URL as a parameter to a call to your default browser (an application associated with the htm and html, etc extension).

~~~~~~~~~~~~~~~~~~~~~~~~~
uses
   Registry, ShellAPI;

function BrowseURL(const URL: string) : boolean;
var
   Browser: string;
begin
   Result := True;
   Browser := '';
   with TRegistry.Create do
   try
     RootKey := HKEY_CLASSES_ROOT;
Access := KEY_QUERY_VALUE;
     if OpenKey('\htmlfile\shell\open\command', False) then
       Browser := ReadString('') ;
     CloseKey;
   finally
     Free;
   end;
   if Browser = '' then
   begin
     Result := False;
     Exit;
   end;
   Browser := Copy(Browser, Pos('"', Browser) + 1, Length(Browser)) ;
   Browser := Copy(Browser, 1, Pos('"', Browser) - 1) ;
   ShellExecute(0, 'open', PChar(Browser), PChar(URL), nil, SW_SHOW) ;
end;

//Usage
BrowseURL('http:delphi.about.com') ;

~~~~~~~~~~~~~~~~~~~~~~~~~
Here's a more general code to find the associated application for a file extension.

Delphi tips navigator:
» MORE TIPS
« How to disable Context menu in a TWebBrowser

Zarko Gajic
Guide since 1998

Zarko Gajic
Delphi Programming Guide

Explore Delphi Programming
About.com Special Features

Stay connected and entertained with reviews on tips on the latest HDTVs, cellphones and more. More >

Easy ways to connect two computers for networking purposes. More >

  1. Home
  2. Computing & Technology
  3. Delphi Programming
  4. Using VCL Components
  5. TWebBrowser
  6. How to open a web site or a .htm file with the default web broswer in a NEW window

©2009 About.com, a part of The New York Times Company.

All rights reserved.