【问题标题】:Trigger local program execution from browser从浏览器触发本地程序执行
【发布时间】:2010-05-26 16:38:24
【问题描述】:

首先:我知道这样做是不对的,甚至是不好的事情,但我当前的客户不会屈服。所以这就是他所要求的(这是针对内部防火墙等项目) )。在网络报告中,我需要提供一个链接,该链接指向驻留在通用映射位置(网络文件服务器)上的可执行脚本。当用户点击它时,它应该在本地客户端上运行,启动本地可执行文件,该可执行文件应该预先安装在客户端的盒子上。它应该与操作系统(Windows 或 Linux)和使用的浏览器无关。客户不介意单击愤怒的弹出警报,但他希望每个客户端浏览器(或至少 - 会话)执行一次。

问题:受信任的 Java 小程序能做到吗?或者是否有任何其他(更好、更简单)的方法来实现相同的目标? ActiveX 控件没有问题

【问题讨论】:

  • 我没有答案,但你有我的同情。听起来客户实际上需要一个桌面应用程序(无论客户是否知道)。

标签: process browser local execution


【解决方案1】:

关于 Java 小程序,请阅读 What Applets Can and Cannot Do

  • 他们无法访问客户端资源,例如本地文件系统、可执行文件、系统剪贴板和打印机。

一般来说,您需要一些服务器端逻辑来执行该任务。

【讨论】:

  • 根据您自己的链接,似乎 signed 小程序可以做到这一点,除非它是从 JavaScript 代码执行的
  • 我不明白服务器如何提供帮助。该客户非常坚持要在具有完整 GUI 的客户端计算机上启动特定的可执行文件
【解决方案2】:

这是我以前见过的 hack。在本地计算机上运行一个小型 Web 服务器,并让浏览器向本地 Web 服务器发送 http:// 请求。该服务器可以对请求进行解析,并可能启动脚本或运行文件。

不推荐,但可以选择。其他用户需要考虑的问题 LogMeIn 如何在 Mac 和 Windows 上工作,并获得文件系统控制?

【讨论】:

    【解决方案3】:

    所以我写了一个我称之为“Insane applet”的东西。步骤如下:

    1. 将空 iframe 放入您的网页中
    2. 当用户单击链接时,生成标签 HTML 代码,其中包含用户作为小程序参数提供的参数。小程序必须签名
    3. 将小程序代码加载到 iframe 中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-31
      • 2020-04-18
      • 2021-02-07
      • 2011-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多