将参数从自定义 URL 协议处理程序传递到 Windows 程序的正确方法

Correct way to pass parameters from custom URL protocol handler to Windows program

我创建了自定义 URL 协议处理程序 (I used this guide to help me)。它是这样工作的:

protocol:" <data_string_1> <data_string_2>"

这在 Google Chrome 中非常有效。调用时我的程序获得以下参数:

param_1: protocol:
param_2: <data_string_1>
param_2: <data_string_2>

然而,在 Firefox 中,整个过程调用被放入 param_1,像这样:

param_1: protocol:%22%20<data_string_1>%20<data_string_2>

在 Internet Explorer 11 中,参数的解析方式与 Google Chrome 相同,但有 507 个字符的限制!

有没有人知道处理所有这些情况并保持理智的好方法?

除了为您要支持的每个浏览器编写不同的代码之外,似乎没有很好的方法来处理这个问题。