我目前正在尝试找出我创建的应用程序协议处理程序的问题。按照 MSDN ( http://msdn.microsoft.com/en-us/library/aa767914%28v=vs.85%29.aspx )上列出的说明,我可以注册我的应用程序PDF Annotator以通过以下方式打开一个网址。我遇到的问题是当我尝试将参数与调用一起传递时。应用程序将打开,但传递的文件参数未在应用程序中打开。
按照 MSDN 的规定,我的注册表项是逐字记录的。我的 HTML 代码如下:
PDFAnnotator:C:\path\to\file\file.pdf
我理解协议处理程序的方式是它获取 URL 并尝试通过命令行启动它。话虽如此,我可以在 PDFAnnotator 中使用提示符中的以下命令打开我的 pdf 文件:
PDFAnnotator.exe C:\path\to\file\file.pdf
我尝试过以不同方式格式化 HTML 中的文件路径,认为这也是问题所在。有没有其他人遇到过这个问题或类似的问题?
后代的强制性更新(http://xkcd.com/979/):
我这样做的原因是因为我的应用程序处理的 PDF 中有一半是可编辑的,而另一半是只读的。我试图使用 Acrobat 插件(我只针对 chrome)将只读链接保留在浏览器中,而该协议将允许我将可编辑链接的链接设置为使用 Annotator 打开。我一时兴起尝试扭转这种情况(将默认设置为 Annotator 并为 Acrobat 创建协议)。我这样做了,首先尝试了 Acrobat 的 URI 方案 (acrobat://),它在打开 Acrobat 之外不起作用。然后,我尝试为 Acrobat 创建一个协议。当它启动时,它给了我一个错误,说明文件名、路径名或卷的路径错误。那么,进步?随着其他优先事项的出现,我暂时放弃了这一点,但希望这对未来的人有所帮助。