是否可以从网络上启动客户端桌面应用程序,例如 Adobe Reader,任何游戏或任何其他软件?
我有一个链接How to launch an EXE from Web page (asp.net)
其中一个人已经让位于使用java脚本打开记事本(桌面应用程序),该脚本仅限于IE。
以类似的方式,我想在我的网页上创建这样的链接,以便用户点击这些链接,如
例如,如果用户点击链接" Adobe Reader "然后Adobe应用程序应该打开/启动。
有没有办法从网上打开任何桌面应用程序?
我遇到了签名的applet概念,我们将从网页上调用已签名的applet,即使用tag,&在里面
applet我们将调用桌面应用程序。
通过使用applet方式,我创建了一个已签名的applet,&我可以通过在applet中直接提供这样的路径来打开记事本应用程序:
Process process = new ProcessBuilder("C:\\Windows\\notepad.exe").start();
但是如何以通用的方式执行此操作,意味着记事本应用程序或任何其他软件可以安装在系统的任何位置。
所以我们不会对应用程序的安装路径有所了解,所以有什么方法可以通过提供这样的服务名称来启动它们作为服务?
Process process = new ProcessBuilder("notepad.exe").start();
答案 0 :(得分:2)
我通过将目标应用程序注册为协议处理程序(目标应用程序本身或保证安装在客户端计算机上的委托应用程序)来处理此问题。
然后使用表单中的链接: myapp:// someaction / arg0 / arg1
然后 myapp:// someaction / arg0 / arg1 将作为命令行参数传递给您的应用,然后您可以解析并执行相应的操作。
这是一篇关于如何实现这一目标的MSDN文章:http://msdn.microsoft.com/en-us/library/ie/aa767914(v=vs.85).aspx
所以在你的情况下,你可以:
如果您想根据网址中指定的args执行更多操作,第二种方法尤其有用。