• 注册自定义URL协议(zhuan)


    注册自定义URL协议(zhuan)
    2009年07月23日 星期四 18:33

    用过电驴的朋友都知道电驴有这么一个功能,在网页上点击电驴资源的链接,如果你的机器上安装了电驴,那么电驴就会自动启动,然后下载所选的资源。这些日子做项目的时候Boss刚好提了这么个需求,经一位同事指点,研究了一下,原来是酱子实现的。

    首先查看一下电驴资源的链接,可以看到全部是已ed2k开头的,比如这个:

    ed2k://|file|06527%E5%A5%87%E8%B6%A3%E5%A4%A7%E8%87%AA%E7%84%B6_%E5%BE%AE%E8%A7%82%E4%B8%96%E7%95%8C%28%E4%B8%8B%29.rmvb|89831750|02C2BAFDCC4950CC3C2E6F583C07E896|h=T3ZB75TXBLJU5AAL6WSTYWMT6YJPUIQS|/

    真没想到原来这么简单的,我在这里记录下来:

    如果你要让程序处理某个自定义URL协议的话,只要在HKEY_CLASSES_ROOT注册一下这个协议就可以了。

    比如我们网站上的链接都是已CustomProtocol开头的,例如:CustomProtocol://www.MyWeb.com /xxx.rar,我们要求用户点击这个链接的时候启动我们的CustomApp程序来处理,那么我们只要注册CustomProtocol协议就可以了,具体就是在HKEY_CLASSES_ROOT按照下面的样子建立各个项目:

    HKEY_CLASSES_ROOT
    CustomProtocol                                                                     协议的名称,比如电驴的就是ed2k
    (Default) = "URL:Custom Protocol"                         协议显示的名称,随便写写
    URL Protocol= ""                                                         这里可以写下协议的描述什么的,否则就为空吧
    DefaultIcon
    (Default) = "CustomApp.exe"                     默认图标,一般都是CustomApp的名字
    shell
          open
                command
          (Default) = "C:\CustomApp.exe" "%1" CustomApp的全路径名

    这样注册下就ok了,当用户点击网站上那些以CustomProtocol开头的链接的时候,系统就会调用CustomApp,并且把完整的链接作为参数传给CustomApp。

    非常简单吧,如果还有什么不明白的,安装下电驴,在注册表里查下HKEY_CLASSES_ROOT下面的ed2k项,看看电驴是怎么写的。

    而普通的文件下载一般都是Http或者Ftp的, 那么大家看下MSDN这篇文章,就全明白了:http://msdn.microsoft.com/library/default.asp?url=/workshop/networking/pluggable/overview/appendix_a.asp?frame=true
  • 相关阅读:
    NLP Best Practices
    Bert模型精简方法
    delphi:对象的创建(create)与释放(free/destory)(转载)
    delphi:Format格式化函数(转载)
    delphi:destroy, free, freeAndNil, release用法和区别(转载)
    delphi:function ParamStr(i:LongInt):string
    jquery:上传文件
    bootstrapValidator中用ajax校验
    jquery中实时监控文本框的变化
    jquery判断checkbox是否选中
  • 原文地址:https://www.cnblogs.com/carl2380/p/1924598.html
Copyright © 2020-2023  润新知