HTML中的自定义协议处理程序(URI)

时间:2014-12-16 17:17:43

标签: html protocols handler

我想在html中使用自定义协议处理程序来启动带参数的程序。

我在HKEY_CLASSES_ROOT中创建了一个名为EchoMe的键,其中包含URL Protocol =“”和一个EchoMe / shell / open / command键,其中包含(Default)=“c:\ testapp \ echome.exe”“%1”“% 2" 。

echome.exe可以使用参数--echo-me文本将其丢回(例如'C:\ testapp \ echome.exe --echo-me text'打开程序和回声'测试')

现在我无法弄清楚如何在HTML中正确地调用它。

到目前为止,我已尝试传递2个参数(如href =“EchoMe: - echo-me Test”),但这似乎与它看起来一样错误。

我也尝试只传递一个参数并更改调用本身(使用(默认)=“C:\ testapp \ echome --echo-me”“%1”打开/命令键并将html更改为href =“ EchoMe:测试“但仍然'测试'没有显示在我的窗口中。

我非常确定问题出现在HTML中,但我找不到任何有关此事的有用信息

1 个答案:

答案 0 :(得分:0)

您必须在此处使用网址编码。所以这个

C:\testapp\echome --echo-me

将成为这个:

C%3A%5Ctestapp%5Cechome%20--echo-me

在JS中你可以使用encodeURIComponent(str)和encodeURI(str)。

相关问题