Friefox打开about:config增加以三个内容:
network.protocol-handler.app.ed2k;/home/XXX/.mldonkey/mld_submit String
network.protocol-handler.external.ed2k;true Boolean
network.protocol-handler.warn-external.ed2k;false Boolean
修改~/.mozilla/firefox/XXXX.default/mimeTypes.rdf
<RDF:Description RDF:about="urn:scheme:ed2k"
NC:value="ed2k">
<NC:handlerProp RDF:resource="urn:scheme:handler:ed2k"/>
</RDF:Description>
<RDF:Seq RDF:about="urn:schemes:root">
<RDF:li RDF:resource="urn:scheme:mailto"/>
<RDF:li RDF:resource="urn:scheme:irc"/>
<RDF:li RDF:resource="urn:scheme:ircs"/>
<RDF:li RDF:resource="urn:scheme:webcal"/>
<RDF:li RDF:resource="urn:scheme:ed2k"/>
</RDF:Seq>
<RDF:Description RDF:about="urn:scheme:handler:ed2k"
NC:alwaysAsk="false">
<NC:possibleApplication RDF:resource="urn:handler:web:https://mail.google.com/mail/?extsrc=mailto&url=%s"/>
<NC:possibleApplication RDF:resource="urn:handler:web:http://compose.mail.yahoo.com/?To=%s"/>
<NC:externalApplication RDF:resource="urn:scheme:externalApplication:ed2k"/>
</RDF:Description>
<RDF:li RDF:resource="urn:scheme:ed2k"/>
这个是添加上去的。
这样打开ED2K链接就会提示选择打开方式
这样可以选择以下的脚本了。
脚本1 <-这个是正确的
#!/bin/csh
(echo "dllink $*" ; echo q) | nc localhost 4000
这个是在Centos上用过的。
#!/bin/bash
echo dllink $*|nc -q 1 127.0.0.1 4000
脚本2 <-这个不太好用。
#!/usr/bin/perl
use URI::Escape;
$uri = $ARGV[0];
$link = sprintf("http://localhost:4080/submit?q=dllink+%s",
uri_escape($uri));
exec ('firefox3',$link);