2011-02-26 33 views
4

我有一个页面可以让我控制本地网络中的一些设备。但是,某些高级设置只能使用位于运行配置页的计算机上的.exe文件进行设置。我想将所有的配置工具“集中到一个地方”,所以最好有一种链接/块/按钮/ flash动画/任何 - 在被用户点击之后 - 会运行指定的.exe文件。我认为这是可能的,因为我看过使用网页发布的MMO游戏。我也怀疑HTML/JavaScript不会让我做这样的事情,所以也许答案是Flash?希望你会有一些想法。从浏览器运行.exe文件(以任何方式)

非常感谢您提供任何线索, Michael。

回答

2

File URI的链接可能会诀窍。你尝试过吗?

0

在客户端上运行exe是不可能的,否则就是安全漏洞。
虽然你可以通过CGI在windows服务器上运行exe。

+1

这似乎是不正确的,它**当然是一种安全风险,但它也可以通过file-URI和/或其他选项中的ActiveX来实现。 – 2011-02-26 13:50:51

2

有办法做到这一点,但这是一个安全风险,所以你不能没有用户的具体许可做到这一点。如果在IE上,你可以用activeX做到这一点,如果在另一个浏览器上它更复杂 - 你可能需要安装一个特殊的插件或DLL。

一个简单的选择是将程序注册为特定类型URI的处理程序。如果您曾经在网络上看过itunes://链接,如果您的电脑上安装了iTunes,它将直接启动iTunes。例如。这里是对how itunes does it的解释。其实这是如何阻止它的解释,但你可以用它来建立你自己的系统来做同样的事情。

完成此操作的另一个位置位于谷歌浏览器下载页面上。如果您曾在您的(Windows)电脑上安装过任何谷歌产品,谷歌也会安装一个dll,只需点击链接即可执行任何已签署的谷歌产品。转到谷歌浏览器下载页面,你可以反转javascript看看他们是怎么做到的(最终是一个本地编译的dll,尽管这允许他们这样做),但安装这个额外的软件使它非常无缝,尽管有点令人不安。

所以你可以看到有很多种方法。

1

运行本地文件将需要能够访问本地计算机的网页中嵌入的对象。这可以通过构建ActiveX控件或Java小程序来实现。对于公共网站等,这通常会皱起眉头,但对于本地网络或受控环境来说,这完全没问题。

0

我通过链接到运行.exe本身的.bat文件。