faqts : Computers : Programming : Languages : JavaScript : Event handling

+ Search
Add Entry AlertManage Folder Edit Entry Add page to http://del.icio.us/
Did You Find This Entry Useful?

74 of 77 people (96%) answered Yes
Recently 10 of 10 people (100%) answered Yes

Entry

How can I run a local windows app (exe) by clicking on a link?

Apr 29th, 2000 15:48
Martin Honnen, Sonny Patterson,


Use the code from
http://www.faqts.com/knowledge-base/view.phtml/aid/1633/fid/124
and call it from a link's onclick handler:

<SCRIPT>
function exec (command) {
  if (document.layers && navigator.javaEnabled()) {
    window._command = command;
    window.oldOnError = window.onerror;
    window.onerror = function (err) {
      if (err.indexOf ("User didn't grant") != -1) {
        alert('command execution of ' + window._command + 
              ' disallowed by user.'); 
        return true;
      }
      else return false;
    }
    netscape.security.PrivilegeManager.enablePrivilege
('UniversalExecAccess');
    java.lang.Runtime.getRuntime().exec(command);
    window.onerror = window.oldOnError;
  }
  else if (document.all) {
    window.oldOnError = window.onerror;
    window._command = command;
    window.onerror = function (err) {
      if (err.indexOf('utomation') != -1) {
        alert('command execution of ' + window._command + 
              ' disallowed by user.'); 
        return true;
      }
      else return false;
    };
    var wsh = new ActiveXObject('WScript.Shell');
    if (wsh)
      wsh.Run(command);
    window.onerror = window.oldOnError;
  }
}
</SCRIPT>

<A HREF="javascript: void 0"
   ONCLICK="exec('notepad'); return false;"
>
notepad
</A>