Executable per Hyperlink starten?

Ich scheibe gerade eine html-Startseite für eine CDROM von der aus man eine Anwendung installieren können soll. Das Problem dabei ist nun, das die Installationsroutine ihrerseits eine weitere executable starten soll. In dieser zweiten Datei befinden sich dann die Hilfen für die Anwendung. Das funktioniert aber nur, wenn die erste Installationsroutine diese zweite exe, die die Hilfedateien enthält, in ihrem eigenen Verzeichnis auch findet.
Genau das ist das Problem: wenn ich die Installationsroutine per Hyperlink starte, dann führt sie der Browser offensichtlich nicht an Ort und Stelle aus, sondern wahrscheinlich in irgendeinem temporären Verzeichnis. Also stellt sie fest das die Datei mit den Hilfen nicht vorhanden ist und bietet die Installation gar nicht erst an.

Habe auch schonmal einen Batchfile probiert, aber der ließ sich auch nicht via Hyperlink starten/ausführen.

Eine mögliche Lösung sollte natürlich möglichst unabhängig vom Betriebssystem sein (erforderlich ist Kompatibilität zu Win95/98/Me/NT/2000/XP), und auch unabhängig vom Browser. Nach Möglichkeit auch ohne Java Applets, notfalls ginge Javascript (womit ich bisher keine Erfahrung habe).

Hat jemand einen Tip?

Hallo,

Genau das ist das Problem: wenn ich die Installationsroutine
per Hyperlink starte, dann führt sie der Browser
offensichtlich nicht an Ort und Stelle aus, sondern
wahrscheinlich in irgendeinem temporären Verzeichnis.

Ja, weil eine ausführbare Datei sich ja auch irgendwo ausbreiten mus, sprich auf einem Beschreibbaren Medium, also in den temporären Internet Explorer Files.

Also
stellt sie fest das die Datei mit den Hilfen nicht vorhanden
ist und bietet die Installation gar nicht erst an.

DAS ist wiederum ein Problem der Installationsroutine an sich. Eine Prüfung kann hier nicht stattfinden. Lediglich ein Aufruf.
Ich löse sowas immer indem ich mit einem klick eine Seite öffnet, die wiederum selbstständig geöffnet wird:

Eine mögliche Lösung sollte natürlich möglichst unabhängig vom
Betriebssystem sein (erforderlich ist Kompatibilität zu
Win95/98/Me/NT/2000/XP), und auch unabhängig vom Browser. Nach
Möglichkeit auch ohne Java Applets, notfalls ginge Javascript
(womit ich bisher keine Erfahrung habe).

System und Browserunabhängig wird es nicht gehen, weil dies eher ein feature vom IE ist ausführbare Dateien auch auszuführen. Stellt auch eher ein Sicherheitsrisiko dar, weshalb einige andere Browser dies auch nicht unterstützen!
Wenn man sowas von CD aus machen wollen würde, ist hier eher eine Autorun.inf Datei auf der CD anzulegen wo dann die Batch Datei aufgerufen würde… Wäre mein Tipp.

Gruß
h.

Hallo,

Genau das ist das Problem: wenn ich die Installationsroutine
per Hyperlink starte, dann führt sie der Browser
offensichtlich nicht an Ort und Stelle aus, sondern
wahrscheinlich in irgendeinem temporären Verzeichnis.

Ja, weil eine ausführbare Datei sich ja auch irgendwo
ausbreiten mus, sprich auf einem Beschreibbaren Medium, also
in den temporären Internet Explorer Files.

Hmm, ich teste aber auf Festplatte. Warum funzt es wenn ich die exe direkt ausführe, aber nicht über Hyperlink?

Also
stellt sie fest das die Datei mit den Hilfen nicht vorhanden
ist und bietet die Installation gar nicht erst an.

DAS ist wiederum ein Problem der Installationsroutine an sich.
Eine Prüfung kann hier nicht stattfinden. Lediglich ein
Aufruf.
Ich löse sowas immer indem ich mit einem klick eine Seite
öffnet, die wiederum selbstständig geöffnet wird:

System und Browserunabhängig wird es nicht gehen, weil dies
eher ein feature vom IE ist ausführbare Dateien auch
auszuführen.

Schade…

Stellt auch eher ein Sicherheitsrisiko dar,
weshalb einige andere Browser dies auch nicht unterstützen!

Ist schon klar. Nicht ganz ungefährlich wenn per Klick ungefragt alles mögliche installiert werden kann, ggf. ohne dass es der user merkt…
Es muß ja auch nicht unbedingt direkt ausgeführt werden, wenn ich die exe per Hyperlink anklicke bekomme ich ja auch eine Abfrage (Was wollen Sie: Offnen/Speichern unter… etc.). Sowas ist ja ok.

Wenn man sowas von CD aus machen wollen würde, ist hier eher
eine Autorun.inf Datei auf der CD anzulegen wo dann die Batch
Datei aufgerufen würde… Wäre mein Tipp.

Die Autorun müsste dann aber die Installation direkt starten, oder? Da sich aber auf der CD verschiedene Versionen bzw Produkte befinden von denen nur bestimmte auf Wunsch installiert werden sollen ist das leider keine Lösung. Es sei denn, ich könnte eine Art „setup.inf“ wiederum per Hyperlink starten die dann ihrerseits das gewünschte per Batchfile ausführt…
Von hintern durch die Brust ins Auge… aber egal - wenn’s nur funzt…?

Jedenfalls danke für die Vorschläge!
Gruß
Martin

Hallo,

Genau das ist das Problem: wenn ich die Installationsroutine
per Hyperlink starte, dann führt sie der Browser
offensichtlich nicht an Ort und Stelle aus, sondern
wahrscheinlich in irgendeinem temporären Verzeichnis.

Ja, weil eine ausführbare Datei sich ja auch irgendwo
ausbreiten mus, sprich auf einem Beschreibbaren Medium, also
in den temporären Internet Explorer Files.

Hmm, ich teste aber auf Festplatte. Warum funzt es wenn ich
die exe direkt ausführe, aber nicht über Hyperlink?

Was passiert denn da? Man wird gefragt was er mit dem File machen soll ausführen oder speichern, oder ?!

Wenn man sowas von CD aus machen wollen würde, ist hier eher
eine Autorun.inf Datei auf der CD anzulegen wo dann die Batch
Datei aufgerufen würde… Wäre mein Tipp.

Die Autorun müsste dann aber die Installation direkt starten,
oder?

Muss nicht.

autorun.inf

[autorun]
open = start.html

In der start .htm steht eben „klicken Sie hier…“ (macht ja auch sinn) und DA ist dann der autorefresh drin…

Da sich aber auf der CD verschiedene Versionen bzw
Produkte befinden von denen nur bestimmte auf Wunsch
installiert werden sollen ist das leider keine Lösung.

„Wählen Sie die version, die Sie installieren wollen…“
Und dann halt verschiedene Unterseiten mit eben den meta refreshs.

Gruß
h.

1 Like

Hallo,

Genau das ist das Problem: wenn ich die Installationsroutine
per Hyperlink starte, dann führt sie der Browser
offensichtlich nicht an Ort und Stelle aus, sondern
wahrscheinlich in irgendeinem temporären Verzeichnis.

Ja, weil eine ausführbare Datei sich ja auch irgendwo
ausbreiten mus, sprich auf einem Beschreibbaren Medium, also
in den temporären Internet Explorer Files.

Hmm, ich teste aber auf Festplatte. Warum funzt es wenn ich
die exe direkt ausführe, aber nicht über Hyperlink?

Was passiert denn da? Man wird gefragt was er mit dem File
machen soll ausführen oder speichern, oder ?!

Im Internet Explorer erscheint eine Download-Warnung das die Datei ggf. Schaden anrichten kann unter Angabe von Dateinamen und Pfad mit der Abfrage ob man Öffnen/Speichern oder die Aktion Abbrechen will. Mit „Offnen“ wird die exe dann ausgeführt.

Wenn man sowas von CD aus machen wollen würde, ist hier eher
eine Autorun.inf Datei auf der CD anzulegen wo dann die Batch
Datei aufgerufen würde… Wäre mein Tipp.

Die Autorun müsste dann aber die Installation direkt starten,
oder?

Muss nicht.

autorun.inf

[autorun]
open = start.html

In der start .htm steht eben „klicken Sie hier…“ (macht ja
auch sinn) und DA ist dann der autorefresh drin…

Da sich aber auf der CD verschiedene Versionen bzw
Produkte befinden von denen nur bestimmte auf Wunsch
installiert werden sollen ist das leider keine Lösung.

„Wählen Sie die version, die Sie installieren wollen…“
Und dann halt verschiedene Unterseiten mit eben den meta
refreshs.

Ich habe das mal ausprobiert, die html-Seite mit dem auto-refresh habe ich mal in dasselbe Verzeichnis gelegt wo sich auch die Installationsdatei befindet. Leider verhält es sich genauso wie vorher.
Ich vermute das es daran liegt das die exe beim direkten Ausführen im Temp-Verzeichnis des Betriebssystems ausgeführt wird, während sie beim starten aus dem Browser heraus (in beiden Fällen) im Temp-Verzeichnis des Browsers gestartet wird. Und damit kommt die Installationsroutine wahrscheinlich nicht klar.

Gruß
Martin

Hy,

Was passiert denn da? Man wird gefragt was er mit dem File
machen soll ausführen oder speichern, oder ?!

Im Internet Explorer erscheint eine Download-Warnung das die
Datei ggf. Schaden anrichten kann unter Angabe von Dateinamen
und Pfad mit der Abfrage ob man Öffnen/Speichern oder die
Aktion Abbrechen will. Mit „Offnen“ wird die exe dann
ausgeführt.

Eben. Es geht nur speichern oder ausführen.

Ich vermute das es daran liegt das die exe beim direkten
Ausführen im Temp-Verzeichnis des Betriebssystems ausgeführt
wird, während sie beim starten aus dem Browser heraus (in
beiden Fällen) im Temp-Verzeichnis des Browsers gestartet
wird. Und damit kommt die Installationsroutine wahrscheinlich
nicht klar.

Aeh, das hört sich eher so an als ob der Pfad zur Datei irgendwie falsch ist. Wie sehen denn die HTML Dateien aus, wo liegen die, wo liegen die ausführbaren dateien, etc. DAS ist eben alles entsprechend der späteren (!) Verzeichnisstruktur zu beachten und einzubauen. Dann klappts auch :wink:
Sorry, ich hab das bis jetzt immer so gemacht und auch auf diversen Heft CDs ist das so gemacht. Schau Dir doch vielleicht mal die aktuelle Ausgabe der Zeitschrift 'ct an (http://www.heise.de/ct) Da ist eine Heft CD dabei, die genau das macht was möglich ist.

Gruß
h.

1 Like

winzip
alle Dateien zippen, dann eine Exedatei erstellen. Soweit ich weiss kann man winzip auch angeben, was nach dem entpacken ausgeführt werden soll - so hast Du sicher alle Dateien in einem Ordner. Allerdings halt zuerst den Winzip screen… Evtl lässt sich der aber sogar wegkonfigurieren - ist zu lang her, dass ich sowas gemacht habe…
HTH