2010-11-17 117 views
1

我写了一个实用程序,需要安装密钥才能卸载,以确保只有授权用户才能卸载。登录到我们的网站后,用户将看到一个卸载密钥,但是我还想在客户端计算机上启动卸载向导。我知道这是可能的,因为我之前已经做过......只是不记得代码,也没有保存它。从PHP启动客户端计算机上的文件?

在此先感谢您的任何意见。

+0

你要求你的用户有一个有效的密钥** ** UN **安装? – drudge 2010-11-17 00:54:22

+0

是的,它是一个内容过滤器。只有管​​理员应该卸载。 – 2010-11-17 01:05:02

回答

3

假设Windows,您可以告诉安装程序使用自定义卸载方案register a custom URL protocol。然后,您的PHP应用程序可以使用自定义URL方案(uninstall-my-product://12345678-ABCD)提供链接。

没有卸载程序的用户会看到“我不知道如何处理此协议”消息。已安装产品的用户将启动卸载程序。

您可以通过提供已注册的文件类型来完成类似的功能,以打开卸载程序。

如果您使用的是商用安装程序,那么在这两种情况下,编写一个小型启动程序来运行卸载程序可能会更容易,而不是修改卸载程序本身。

+0

好吧,我喜欢自定义URL协议的想法,但我只是无法理解它是如何完成的。我想我需要编写一个处理程序,可以用Python吗?但是,我也不了解如何注册协议。 – 2010-11-17 01:08:12

+0

@Zachary Brown:处理程序只是一个注册表项(请参阅@ Seth的链接),指向您的卸载向导。然后,如果您从浏览器打开URL“your-protocol-name://”,它将打开您的向导。 – casablanca 2010-11-17 15:28:59

5

PHP在服务器端运行,无法控制客户端。由于安全原因,您无法使用JavaScript来启动应用程序。

您可以做到这一点的唯一方法是使用ActiveX控件或某种自定义浏览器插件。或者,如果您的卸载向导在客户端注册了一些协议处理程序(如myuninstall://),那么您可以使用JavaScript将用户重定向到此协议的URL,然后该协议将启动您的程序。

相关问题