Ed2k links handling-de

From AMule Project FAQ
Revision as of 10:03, 24 June 2006 by GonoszTopi (Talk | contribs)

Jump to: navigation, search
English | Deutsch

I've just started translating, please excuse any incomplete parts.

Die Art wie aMule die ed2k links mit deinem favorisierten Browser handhabt, hängt davon ab, welchen Webbrowser du nutzt. Also ist hier eine Liste mit Mini-HowTos für jeden der populärsten Webbrowser. Beachte, dass überall in diesem Dokument /path/to/ed2k mit /usr/local/bin/ed2k, /usr/bin/ed2k, C:\Programme\aMule\ed2k.exe oder etwas anderem ersetzt werden sollte, je nachdem wie dein System konfiguriert ist.

Allgemein wird bei den meisten Linuxsystemen ein selbstkompiliertes aMule das ed2k Hilfsprogramm in /usr/local/bin/ed2k installieren, wohingegen bei einer Paketinstallation von aMule es nach /usr/bin/ed2k installiert wird. Als Ausnahme ist es bekannt, dass SuSe-Pakete es nach /usr/local/bin/ed2k installieren.

Internet Explorer

von Jacobo221

Gehe zu "Start" -> "Ausführen" und starte "regedit" (ohne Anführungszeichen).

Gehe nun im regedit zu HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ed2k\shell\open\command

Anmerkung: Es könnte passieren, dass ed2k und/oder seine Unterordner nicht existieren. Erstelle sie in diesem Fall einer nach dem anderen durch rechtsklicken "Neu" -> "Schlüssel" und der Eingabe von ed2k oder was auch immer der Wert ist.

http://www.amule.org/dev-up/ed2k-win1.jpg

Nun klicke einfach doppelt auf "(Standard)" (oder was auch immer der erste Wert dort ist) und gib den Pfad zur ed2k-Anwendung ein, gefolgt von "%1" (mit Anführungszeichen), so dass am Ende ein Wert wie C:\Programme\aMule2\ed2k "%1" vorhanden ist.

http://www.amule.org/dev-up/ed2k-win2.jpg

Mache das gleiche schlussendlich auch in HKEY_CLASSES_ROOT\ed2k\shell\open\command.


Konqueror

von gfdsa

/usr/kde/3.1/share/services you can find it by file names ended with .protocol kinda `find /usr -name "*.protocol"` or `find /opt -name "*.protocol"` or even put / to path if you want.

Wenn die Suche erfolgreich war, erstelle eine Datei namens ed2k.protocol im der angesprochenen Ordner:

[Protocol]
exec=/path/to/ed2k "%u"
protocol=ed2k
input=none
output=none
helper=true
listing=false
reading=false
writing=false
makedir=false
deleting=false

Nun starte Konqueror einfach neu.

Anmerkung: Du könntest eine Sicherheitswarnung erhalten. Keine Sorge, es ist nur eine Warnung, dass dein Link zu einer externen Anwendung gesendet wird.

Anmerkung 2: Wenn nach dem Klicken von OK Bei der Sicherheitswarnung der Link immer noch nicht zu aMule gesendet wird, klicke einfach mit rechts auf den ed2k-Link und befehle Konqueror es in einem neuen Tab/Fenster zu öffnen.

Galeon

Methode 1

Gehe im GNOME Control Center zu "Komplex" -> "Dateitypen und Programme" -> "Internetdienste" -> "Dienst hinzufügen...".

Gib ed2k in das Protokollfeld ein.

Gib ed2k %s in das Programmfeld ein.

Deselektiere "In Terminal ausführen." wenn es ausgewählt ist.

Klicke auf OK und es ist getan!

Methode 2

Führe die folgenden 3 Befehle aus um die entsprechenden gconf-Schlüssel zu erstellen:

  • gconftool-2 -t string -s /desktop/gnome/url-handlers/ed2k/command "/usr/local/bin/ed2k %s"
  • gconftool-2 -t bool -s /desktop/gnome/url-handlers/ed2k/enabled true
  • gconftool-2 -t bool -s /desktop/gnome/url-handlers/ed2k/needs_terminal false

Ersetze "/usr/local/bin/ed2k" oben mit dem Pfad und dem Namen der ed2k-Anwendung in deinem System.

Die Deinstallation ist ähnlich einfach:

  • gconftool-2 -u /desktop/gnome/url-handlers/ed2k --recursive-unset

Opera

von thermoman (Marcel Meckel), ender und Jacobo221

Auf die saubere Art und Weise

Gehe in Opera zu Werkzeuge->Einstellungen->Pfade und Programme->Hinzufügen...

Gib im "Protokoll"-Feld ed2k ein.

Gib im "Pfad" oder "Öffne mit anderer Anwendung"-Feld /path/to/ed2k ein.

http://www.amule.org/dev-up/ed2k-op.jpg

Auf die schmutzige Art und Weise

Wenn die obigen Anweisungen nicht funktioniert haben, kannst du versuchen /etc/opera6rc als root oder ~/.opera/opera6.ini als normaler Benutzer zu editieren und folgende Änderungen machen:

[User Prefs]
TrustedExternalURLProtocols=ed2k
[Trusted Applications]
ed2k=ed2k

Opera 6 Fehler

Opera 6 gibt keine kompletten URLs an externe Programme weiter, nur URLs ohne Protokoll. Die Art und Weise das zu Umgehen folgt.

Linux oder ein anderes Unix-ähnliches Betriebssystem

Erstelle die Datei amule_submit.sh mit diesem Inhalt:

#!/bin/sh
/path/to/ed2k "ed2k://$1"

Ändere nun in Werkzeuge->Einstellungen->Pfade und Programme->Hinzufügen... oder in der opera6rc Datei ed2k=/path/to/ed2k mit ed2k=/path/to/amule_submit.sh.

Windows

Erstelle die Datei amule_submit.bat mit diesem Inhalt:

X:\path\to\ed2k.exe "ed2k://%1"


Ändere ed2k=/path/to/ed2k ed2k://%u zu ed2k=X:\path\to\amule_submit.bat ed2k://%u

Mozilla 1.7 (oder neuer) & Firefox 0.9 (oder neuer)

vonGhePeU

Mozex funktioniert nicht mehr mit Mozilla 1.7 und Firefox 0.9. Es gibt eine alternative Methode, die mit beiden zu funktionieren scheint:

  • Entferne MozEx wenn es installiert ist oder entferne zumindestens die ed2k-Eingabe (nur wenn MozEx installiert ist.)
  • Füge about:config in der Adresszeile ein.
  • Klicke mit rechts auf die Liste, wähle Neu, dann Boolean; füge network.protocol-handler.external.ed2k als Einstellungsname und true als Wert ein.
  • Nun ein weiterer Rechtsklick, wähle Neu und String; füge network.protocol-handler.app.ed2k als Einstellungsname und /path/to/ed2k (Der Pfad wo die Datei auf dem System installiert ist.) als Wert ein.

http://www.amule.org/dev-up/ed2k-ff9.jpg

Anmerkung 1: Seit der Version 1.5.x von Mozilla Firefox funktioniert diese Methode nicht mehr für die Windowsversion. Du musst stattdessen die Internet Explorer-Methode mit den Registrierungseinträgen nutzen.


Firefox v0.8

Gehe zu MozExs Webseite und installiere die mozex-1.07.xpi-Datei.

Starte FireFox neu, gehe zu Bearbeiten -> Einstellungen -> Erweiterungen -> mozex -> Optionen -> ED2K und lege es als /path/to/ed2k %r fest.

Klicke auf OK und es ist getan.

http://www.amule.org/dev-up/ed2k-firefox.png

http://www.amule.org/dev-up/ed2k-mozex.png

Mozilla 1.3 to 1.6 & Firebird v0.6

von DeltaHF Gehe zu MozEx's Webseite und installiere die mozex-1.07.xpi-Datei.

Starte Mozilla/FireBird neu, gehe zu Bearbeiten -> Einstellungen -> mozex -> ED2K und lege es als /path/to/ed2k %r fest.

Klicke auf OK und es ist getan.


http://www.amule.org/dev-up/ed2k-moz.png

Mozilla 1.2.1 or earlier

von rpokorny [R. Pokorny]

1) Gehe zu Protozillas Webseite
Wähle die zu deiner Mozilla-Version passende Version aus und klicke auf Installieren. Es wird Protozilla automatisch installieren.
Schliesse nun Mozilla völlig.

Anmerkungen für Linux-Nutzer und Nutzer anderer Unix-artigen Systeme
- Du benötigst Schreibrechte für Mozillas Installationverzeichnis. Wenn du Mozilla nach /usr installiert hast, musst du wahrscheinlich root sein.
- Das Herunterladen der vorkompilierten Version von Protozilla funktioniert augenschlich nicht mit Debians Mozilla-Paketen. Es funktioniert beispielsweise mit der vorkompilierten Version 1.2.1, die auf Mozillas Webseite verfügbar ist. (Oder du kannst sowohl Mozilla als auch Protozilla selbst kompilieren).

2) Dieser Schritt ist nur nötig, wenn du Mozilla/FireBird/FireFox im ersten Schritt als root starten musstest.

Führe als root aus: cp -r /root/.mozilla/PROFILENAME/RANDOM.slt/protozilla/ /home/USERNAME/.mozilla/PROFILENAME2/RANDOM.slt/

Das kopiert die protozilla-Konfiguration von roots Homeverzeichnis zum Homeverzeichnis des Benutzers.

cd /home/USERNAME/.mozilla/PROFILENAME/RANDOM.slt/ chown -R YOURUSER.YOURGROUP protozilla

Das ändert die Datei-Eigentumsverhältnisparameter in den Benutzerdateien.

Anmerkungen:
USERNAME: Name des normalen, nicht-root Benutzers.
PROFILENAME: Name des Profiles, welches du nutzen möchtest.
RANDOM: Zufälliger alphanumerische Zeichenkette, automatisch von Mozilla generiert.
YOURUSER, YOURGROUP: Benutzer und Gruppe des normalen Benutzers.

3) Richte eine Protokollbewältigung für ed2k links:
cd ~/.mozilla/PROFILENAME/RANDOM.slt/protozilla/protocol

Erstelle eine Datei namens ed2k.cmd mit dem folgenden Inhalt:

ed2k ed2k:$URI_DATA

(Die Datei muss nicht ausführbar sein.).

Starte nun Mozilla neu.

Links

(Probably this will work for the usual links and/or elinks, too)

add to url.c behind the lines about telnet and tn3270:

 --snip
 {"ed2k", 0, NULL, ed2k_func, 0, 0, 0},
 --snap

add to links.h behind the definitions of /* mailto.c */:

 --snip
 void ed2k_func(struct session *, unsigned char *);
 --snap

add to mailto.c at the end:

 --snip
 void ed2k_func(struct session *ses, unsigned char *url)
 {
 tn_func(ses, url, options_get("network_program_ed2k"), TEXT(T_ED2K), TEXT(T_BAD_ED2K_URL));
 }
 --snap

add to options_register.c behind telnet and tn3270:

 --snip
 register_option_char("network_program_ed2k", TEXT(T_ED2K_PROG),NULL,2);
 --snap

add to intl/*.lng behind

 "T_TN3270_PROG": T_ED2K_PROG, "ed2k program", (or whatever that is in your language), behind
 "T_TN3270": T_ED2K, "ed2k", and behind 
 "T_BAD_TN3270_URL": T_BAD_ED2K_URL (I guess you've got the picture)

If you want to automatize this stuff, execute the following commands:

 cd intl
 for l in *.lng; do
   cp $l $l.bak
   cat $l.bak | sed -e "/T_TN3270_PROG*/aT_ED2K_PROG\, \"ed2k program\"\," \
    -e "/T_TN3270,\ */aT_ED2K\, \"ed2k\"\," \
    -e "/T_BAD_TN3270_URL*/aT_BAD_ED2K_URL\, \"Bad ed2k url\"\," > $l
 done
 

Anyway, run afterwards before recompiling links-hacked:

 ./synclang
 cd ..

Now you can compile with

 ./configure (add your favourite options here) &&
 make &&
 make install

Because links somewhat malforms the urls, we need a small bash script handler:

 cat > /usr/bin/ed2k4links.sh << "EOF"
 #!/bin/bash
 ed2k $(echo "ed2k://$1" | sed s/_/\|/g)
 EOF
 chmod a+x /usr/bin/ed2k4links.sh

Do not forget to setup links (Options->Network Options->Mail and Telnet Programs) to call our ed2k4links.sh for ed2k links:

 ed2k4links.sh %

Attention: The Percent Mark is important! Now links should work with ed2k links.

Remotely handling links

You can also handle links remotely, which means that you click over an ed2k link in a browser somewhere in the world and it gets into your home's aMule queue.

How?

Easy enough: using aMuleCMD (thanks djtm for this tip). Instead of using the ed2k command, use the following as the command to use:

/path/to/amulecmd -rh $server -pw $pw -c "Add %u"

Obviously, you'll have to replace $server and $pw with your server's IP (or DNS) and your External Connections password.

Please note that the above tip is only available since aMule 2.0.0rc8.

NOTE 1: In Firefox, it is not possible to start a command with parameters. An easy solution is a shell script with the command described above. You only have to replace %u with $1. This shell script must be executable (chmod +x ed2k.sh) and defined as external ed2k app in Firefox.

NOTE 2: If you prefer simple tools, try this shell script (for Linux) - can be used with the above mentioned tip:

#!/bin/bash
beep -f 100 -l 40 -r2
(sleep 1; echo dllink $1; sleep 2; echo q;) | nc IP PORT
beep -l 15 -r3

nc is Netcat, but you can use telnet too (that's a bit simpler in Cygwin), beep is a simple program for beeping. IP and PORT should be replaced with the IP address and port of your remote server. That's it.

      • N O T E***

I found the perfect way to do this.

To make FireFox launch ed2k links correctly (in aMule) you have to follow some simple steps to tell it how to handle a new external protocol. This should get rid of the dreaded "ed2k is not a registered protocol" error you were most likely getting before.

  • Enter about:config in the address bar.
  • Right click on the list, select New, then Boolean; enter
 network.protocol-handler.external.ed2k as Preference Name and true as Value
  • Now right click, select New and String; enter

network.protocol-handler.app.ed2k as Preference Name and /usr/bin/ed2k