josefklupfer: eigenes protokoll definieren (z. b. ed2k://)

hallo - wer kann helfen?

seit einiger versuchen wir auf einem lokalen rechner vom internet explorer aus ein programm zu starten.

also wir haben z. b. einen link auf ein bild, <a href="bild.jpg">Bild anzeigen</a>

wenn jemand auf diesen link klickt, dann wird das bild ganz normal im explorer (egal ob opera, ie, firefox) angezeigt. wir möchten aber erreichen, dass bei einem klick nun automatisch z. b. irfan view gestartet wird und dort das bild angezeigt wird.

mit verweisen wie <a href="file://C:/Programme/IrfanView/i_view32.exe">image2.jpg</a> wird eine box angezeigt, die den download des programms oder das öffnen anbietet. aber wir möchten ja nicht diese box sehen, sondern irfan view. auf diesem weg ist es auch nicht möglich das bild als parameter zu übergeben.

über eigene MIME-typen haben wir leider nichts erreichen können. aber als wir sahen, dass eDonkey ein eigenes protokoll definiert (ed2k://) wollten wir in diese richtung mal arbeiten.

so bewirkt ein nomaler link im browser mit ed2k://|file|lied.mp3|checksum... dass eDonkey startet und die datei als parameter bekommt. dies funktioniert mit beliebigen browsern, ohne dass eDonkey im hintergrund läuft oder zu beginn einmal gestartet wurde.

wer weiss wie so was funktioniert, dass man sein eigenes protokoll definiert? vielen dank an alle, die einen tipp haben.

vielen dank, tschüss, josef!

  1. Hallo josef,

    das ist ja interessant, ich dachte, programm starten aus Browser geht nicht. Die Lösung seinerzeit, die mir mal vorgeschlagen wurde, war, es mit einer *.hta Datei zu machen und dort mit JScript. Hatte das auch mal probiert glaub ich und es ging.

    Gruß, Frankx

    1. Hallo Josef,

      das mit den *.hta hat aber nix mit Browser zu tun, sorry. Ist nur eine einfache Möglichkeit, sich eine browserähnliche Oberfläche zu basteln, von der aus mit buttons Batches oder Programme gestartet werden können, via JScript oder VBA.

      Gruß, Frankx

    2. hallo frank

      irgendwie funktionierts mit der regedit,aber wie das weiss ich noch nicht genau...

      gruss

    3. hallo frankx

      dein tipp mit der bat datei und dem echo %1 und so war gut! das problem war, dass der pfad und dateiname in %2 standen, also ruf ich von der bat einfach irfan view mit den richtigen param. auf.

      danke für den tipp, tschüss, josef

      1. Hallo josef,

        erklärst Du mir noch kurz, wie Du das jetzt aus dem Browser startest? Kannst Du eine Batch-Datei via Browser zum laufen bringen?

        Dank und Gruß, Frankx

        1. hallo frank

          ich hab in der registry den schlüssel von edonkey auf meine batch datei umgeleitet. also wenn ich im browser ed2k://%20parameter eingebe dann ruft das nun die batchdatei auf. das %20 steht für ein leerzeichen. die batchdatei sieht so aus

          c:\irfanview.exe %2

          denn %2 ist der parameter.

          klappt ganz gut, nur ist halt immer ein konsolenfenster offen. und du musst halt an der registry etwas rumbasteln. hab halt den eintrag von edonkey abgeändert. versuchs mal, klappt ganz gut das ganze.

          viele grüsse, tschüss, josef

          1. Hallo Josef,

            da hab ich doch selbst etwas recherchiert https://forum.selfhtml.org/?t=122571&m=788356

            Klappt prima. Mit "mein://%20param1%20param2" rufe ich eine Batchdatei auf, der ich wie oben beschrieben Paramter übergeben kann. Das hattest Du ja auch schon.

            Da von dort dann das Irfanview aufrufen. Dann haste auch kein Konsolenfenster und kannst via Batch alle möglichen Programme starten. Dannach hatte ich schon lang mal gesucht bzw. gedacht, das ginge nicht.

            Gruß, Frankx

  2. nachtrag

    also wenn ich in der registry den eintrag von ed2k suche und dann unter HKEY_CLASSES_ROOT\ed2k\shell\open\command den wert von "C:\Programme\eMule.de\emule.exe" "%1" auf "C:\Programme\IrfanView\i_view32.exe" "%1" ändere, dann funktioniert es schon halbwegs

    beim aufruf von ed2k:// im browser startet nun irfan view, leider kann ich noch kein bild als parameter angeben, da irfan view stets die fehlermeldung bringt "ed2k: : can't read fileheader - Unknown file format"

    wie müsste ich denn das file in der url angeben, hat wer ne idee? %1 auf %0 oder %2 zu ändern bringt nichts.

    vielen dank, tschüss

    1. Hallo,

      %1 ist glaub ich der Platzhalter für den ersten Parameter, der übergeben wird.

      Habe ich ein Batchdatei namens test.bat, die echo %1 enthält und rufe sie auf mit "test.bat Meinname" dann wird Meinname ausgeechot.

      Frage ist, ob Irfanview mit Parameterübergabe gestartet werden kann zum einen. Und dann ist da ja noch das "ek:// ..." oder was da steht.

      Gruß, Frankx

      1. Hallo Josef,

        es würde ja schon reichen, wenn mesnsch via Browser eine Verknüpfungsdatei öffnen könnte. S.a. http://www.pcwelt.de/defaults/drucken/44/109704/. Darin übrignes zu IrfanView:

        Manche Anwendungen und einige Systemkommandos, die beim Aufruf spezielle Argumente unterstützen oder sogar voraussetzen, lassen sich nur mit Verknüpfungen (sinnvoll) einsetzen. Zwei Beispiele:

        <Pfad> \I_View32.exe
        "D:\Meine Fotos" /thumbs

        Dieser Befehl mit einem Pfadargument und dem Thumbs-Parameter startet Irfan View gleich am gewünschten Ort und mit dem Thumbnail-Fenster. Die „Ziel“-Zeile eines Links kann Kommandos von bis zu 260 Zeichen Länge aufnehmen und bietet damit ausreichend Raum für Argumente aller Art.

        Gruß, Frankx