How can I open a link in the default web browser from an HTA?

Joel Anair picture Joel Anair · Oct 9, 2008 · Viewed 42.6k times · Source

I'm working on an application that is implemented as an HTA. I have a series of links that I would like to have open in the system's default web browser. Using <a href="url" target="_blank"> opens the link in IE regardless of the default browser.

Is there a way to use the default browser? Using JavaScript is an option.

Answer

Jonny Buchanan picture Jonny Buchanan · Oct 9, 2008

Create a shell and attempt to run a URL.

This works for me (save as whatever.hta and execute it) on my system. Clicking on the button opens Google in Firefox:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
  <title>HTA Test</title>
  <hta:application applicationname="HTA Test" scroll="yes" singleinstance="yes">
  <script type="text/javascript">
  function openURL()
  {
      var shell = new ActiveXObject("WScript.Shell");
      shell.run("http://www.google.com");
  }
  </script>
</head>
<body>

<input type="button" onclick="openURL()" value="Open Google">

</body>
</html>