viernes, 23 de agosto de 2019

Lanzar Ejecutables(EXE) desde el navegador web

El presente post está destinado a explicar cómo podemos ejecutar aplicaciones de escritorio desde el nuestro cliente web.

La necesidad de esta aplicación surge debido a necesidad de la ejecución de aplicaciones de escritorio desde el navegador web. Utilizando para ello otras plataformas que no sean los ActiveX ya que la compatibilidad con dicho componente no tienen soporte para otras plataformas de navegador fuera de Internet Explorer como pueden ser Chrome, Firefox, Safari, etc.

Descripción de aplicación de ejemplo:
Vamos a realizar una pequeña aplicación en la que vamos a lanzar la calculadora de Windows desde el navegador.

Paso 1: Crear registro de Windows


  • Creamos el fichero "AppUrl.reg" para agregar al registro.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\appurl]
@="URL:AutoHotKey AppURL Protocol"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\appurl\DefaultIcon]
@="appurl.exe,1"

[HKEY_CLASSES_ROOT\appurl\shell]

[HKEY_CLASSES_ROOT\appurl\shell\open]

[HKEY_CLASSES_ROOT\appurl\shell\open\command]
@="\"C:\\Windows\\System32\\calc.exe\" \"%1\""

  • Añadimos al registro de Windows.



Paso 2: Crear web

==================================================================================
<html>

<head>

<meta charset="UTF-8"> 

<style>

 button {
  width: 180px;
  height: 60px;
 }

 td {
  height: 60px;
  border-style: solid;
  border-width: 1px;
  text-align: center;
 }

 .btn {
  border-width: 0px;
 }

 p {
  text-align: center;
 }
 
</style>

<script type="text/javascript">

function LanzarAPP() {
    window.location.assign("appurl://1");
}

</script>

</head>

<body>
 <h1 align=center><u> Ejecutar appURL </u></h1>
 <p id="contador"></p>
 <table width=600 align="center"><tr>
  <tr>
  <td class='btn'><button onclick="LanzarAPP()">Calc.exe</button></td>
  <tr>
 </table>
</body>

</html>
==================================================================================

Ejemplo:





No hay comentarios:

Publicar un comentario