base64-Codierung in HTML einbetten

Hallo zusammen,

ich habe meine Frage im Grafikbrett bereits gestellt, allerdings zeichnet sich gerade ab, dass der Grafik-Teil meiner Frage gelöst ist und jetzt eher HTML-Kenntnisse gefragt sind.

Vielleicht kann ein MOD den Thread hierher verschieben? Ansonsten hat vielleicht hier jemand eine Idee zu meinem Problem?

Fester Link: http://www.wer-weiss-was.de/article/5966511

Gruß
(Woly)

Hallo Woly,

Du willst eine EXE-Datei in einer HTML-Datei zur Verfügung stellen. (Nicht in einer Email als Anhang versenden)

Da gibt es folgende Möglichkeit:
Die Datei base64 encoden und dieses in die HTML-Datei einfügen.

 oder bieten sich da an.
Wer die EXE haben will, muss sich diesen Teil "ausschneiden" und wieder decoden und schon hat er die EXE.
So ähnlich wird das auch in den binary-groups gemacht.

Eine Möglichkeit, dass der Browser diesen decode-Vorgang übernimmt, wie bei einem image, sehe ich nicht.

Gruß
Klaus

Leider noch keine Lösung gefunden :frowning:
Hallo Klaus,

Du willst eine EXE-Datei in einer HTML-Datei zur Verfügung stellen.

Korrekt. Die EXE ist ein Fernwartungs-Modul, welches den Benutzern auf der Startseite einer (lokal installierten) Anwendung zur Verfügung stehen soll. Die Anwendung stellt für genau solche Zwecke eine rudimentäre HTML-Seite bereit, leider aber gibt es keine vernünftige Möglichkeit, eine EXE zu hinterlegen.

Natürlich könnte ich die EXE auch woanders hinlegen, aber das würde den Verwaltungsaufwand nur unnötig erhöhen. Die EXE soll ja auch nicht automatisch starten, sondern nur, wenn der Benutzer darauf klickt.

oder bieten sich da an.
Wer die EXE haben will, muss sich diesen Teil „ausschneiden“
und wieder decoden und schon hat er die EXE.

Das klingt zwar schon gut, aber diesen Vorgang kann ich den Benutzern unmöglich zumuten. Wenn alle Stricke reißen, muss ich die EXE halt in einen Webspace hochladen und über einen -Tag darauf referenzieren. Da den Benutzern teilweise aber eher geringe Bandbreiten zur Verfügung stehen, dauert das Herunterladen dann unter Umständen ein paar Minuten.

Eine Möglichkeit, dass der Browser diesen decode-Vorgang
übernimmt, wie bei einem image, sehe ich nicht.

Hm… schade. Vielleicht fällt ja noch jmd. anderem etwas dazu ein?!

Danke und Gruß
(Woly)

Re: Leider noch keine Lösung gefunden :frowning:
Moin,

Natürlich könnte ich die EXE auch woanders hinlegen, aber das
würde den Verwaltungsaufwand nur unnötig erhöhen. Die EXE soll
ja auch nicht automatisch starten, sondern nur, wenn der
Benutzer darauf klickt.

Fernwartung

Wer darauf klicken kann/darf, tut es vielleicht und kann das Programm dann vielleicht sogar direkt ausführen.
Wenn das aufgrund z.B: Sicherheitseinstellungen nicht geht, der speichert es erst ab und startet es dann aus dem Speicherort heraus.

Liebe Grüße,
-Efchen

Re^2: Leider noch keine Lösung gefunden :frowning:
Moin -Efchen,

ich glaube, ich kann Dir nicht folgen:

Fernwartung

Würde ja funktionieren, aber ich müsste die EXE entweder lokal ablegen (zu hoher Verwaltungsaufwand) oder in einem Webspace (Ladezeit bei geringen Bandbreiten zu lange). Mir geht es ja darum, die EXE als Base64-Code direkt im HTML-Code zu hinterlegen. Dann spare ich mir sowohl den Verwaltungsaufwand als auch die längere Ladezeit.

Wer darauf klicken kann/darf, tut es vielleicht und kann das
Programm dann vielleicht sogar direkt ausführen.

Können und dürfen tut jeder, das die Anwendung benutzt.

Wenn das aufgrund z.B: Sicherheitseinstellungen nicht geht…

Das stellt kein Problem dar…

Gruß
(Woly)

Mir geht es ja
darum, die EXE als Base64-Code direkt im HTML-Code zu
hinterlegen.

Wenn ich ehrlich bin, kann ich mir nicht vorstellen, dass das geht. Das hört sich für mich an wie ein großes Sicherheitsloch, wenn das ginge. So könnte man ja einen beliebigen Nutzer dazu bringen, eine ausführbare Datei (mit Schadcode) runterzuladen, ohne dass er das merkt.
Bei Images ist das eine Spur ungefährlicher, aber ausführbare Programme? Ich glaub nicht, dass das möglich ist.

Ich kann mir vorstellen, dass Du jetzt sowas sagst wie „Aber das ist ja nur lokal in unserem Netz“, aber das ist ja für HTML und die Browser egal. Wenn das lokal möglich wäre, dann könnte man es auch schaffen, dass das im normalen WWW funktioniert und das wäre halt zu gefährlich. Von daher gibts kaum Unterschiede zwischen dem, was im WWW möglich ist und dem, was im lokalen Netz möglich ist.

Wenn jemand was anderes darüber weiß, möge er mich korrigieren, ich hab mir über sowas bisher noch nie Gedanken gemacht, eben auch aus besagten Sicherheitsgründen.

Liebe Grüße,
-Efchen

1 Like

darum, die EXE als Base64-Code direkt im HTML-Code zu
hinterlegen. Dann spare ich mir sowohl den Verwaltungsaufwand
als auch die längere Ladezeit.

base64 ist kein komprimierverfahren!!
im gegenteil, durch die umwandlung von binär-code in ascii-zeichen werden es ca. um 1/3 mehr zeichen.

gruß
klaus

Hallo Klaus,

das ist mir schon klar. Es macht aber einen Unterschied, ob ich eine 3-MB-EXE über eine langsame Leitung herunterladen muss oder ob ich eine 4-MB-lokal starte. Letztes ist definitiv schneller!

Es muss ja auch nicht unbedingt Base64 sein. Ich bin auch offen für jedes andere Verfahren, mit dem ich die EXE so in eine HTML-Seite einbinden kann, dass sie sich direkt im Code befindet und keinen separaten Speicherort im Dateisystem oder im Web benötigt.

Gruß
(Woly)

1 Like

Ja, und RakonDark bestätigt meine Vermutung, dass das aus Sicherheitsgründen nicht geht. Ein Webbrowser ist für solche, lokale Vorhaben das falsche Werkzeug.

Re^3: Leider noch keine Lösung gefunden :frowning:
Hallo?

Fernwartung

Würde ja funktionieren, aber ich müsste die EXE entweder lokal
ablegen (zu hoher Verwaltungsaufwand)

Wieso?
Wenn es einen Server im lokalen Netzwerk gibt, dann leg die exe auf ein allgemein zugängliches und gemapptes Laufwerk (notfalls vom Admin eines speziell für diesen Zweck einrichten lassen) und referenziere darauf:

[Fernwartung](file://S:/Tools/remote.exe)

Zumindest in einem Win2k/XP-Netzwrk tut’s das.
Und großartigen Verwaltungsaufwand kann ich da nicht sehen.

lg, mabuse

Wieso?

Das zu erklären würde hier den Rahmen sprengen. So einfach ist es leider nicht.

Wenn das mit dem Einbetten nicht geht, beissen wir halt in den sauren Apfel und laden die 3-MB-EXE über einen Webspace herunter. Dann dauert es ensprechend der jeweiligen Bandbreite halt länger…

Gruß
(Woly)

Re^5: Leider noch keine Lösung gefunden :frowning:
Hallo Woly,

das ist mir schon klar. Es macht aber einen Unterschied, ob
ich eine 3-MB-EXE über eine langsame Leitung herunterladen
muss oder ob ich eine 4-MB-lokal starte. Letztes ist definitiv
schneller!

was hat das damit zu tun, eine exe-Datei base64-encoded in einer HTML-Datei zur Verfügung zu stellen?
Du willst aus dem Browser heraus eine lokale Exe-Datei starten.
Wie wäre es mit:
[Fernwartung](file:///pfad/remote.exe)
Dann wird gefragt: speichern oder ausführen und der User entscheidet.

Und ich kann es mir nicht verkneifen dazu noch ein bißchen zu kommentieren:

  1. die Frage dermaßen in die falsche Richtung gestellt wird.
  2. diese „Lösung“ nicht bekannt
    lässt sich schnell vermuten, dass es mit der Fernwartung auch nicht besonders gut laufen wird :smile:))

Gruß
Klaus

Re^6: Leider noch keine Lösung gefunden :frowning:
Hi Klaus!

was hat das damit zu tun, eine exe-Datei base64-encoded in
einer HTML-Datei zur Verfügung zu stellen?

Die HTML-Seite liegt lokal in der Anwendung. Bräuchte also nicht erst heruntergeladen zu werden.

Wie wäre es mit:
[Fernwartung](file:///pfad/remote.exe)

Wie schon gesagt: Ich möchte keine Lösung, bei der die EXE an irgendeinem anderen Speicherort liegt. Weder lokal, noch remote.

  1. die Frage dermaßen in die falsche Richtung gestellt wird.

Versteh’ ich nicht… wie wäre denn die richtige Richtung?

  1. diese „Lösung“ nicht bekannt lässt sich schnell vermuten, dass es
    mit der Fernwartung auch nicht besonders gut laufen wird :smile:))

Kapier’ ich auch nicht… Was willst Du damit sagen? Für den Anwender gibts doch nichts einfacheres, als die Fernwartung direkt aus der Anwendung heraus zu starten.

Gruß
(Woly)

1 Like