nevyl: IE8 Problem: Donwload EXE

Hallo Leute,

im Rahmen meiner Diplomarbeit programmiere ich eine Anwendung, die als „GUI-SPS User Interface“ arbeitet.
Die Anwendung ist als WinAnwendung auf jeder SPS kopiert.
Der Benutzer soll sich über den vorhanden Webserver der Anlage die Anwendung-von der jeweiligen SPS holen.

Meine Lösung bis jetzt:
 Der Benutzer besucht die Seite auf der SPS z. B. http://mysps.de/start.html
und kopiert die WinAnwendung auf seinen Rechner, startet Sie und verbindet sich mit der SPS.

Ich habe schon mit <a href="http://mysps.de/Anwendung.exe">Download</a>
bzw. mit Redirekt <meta http-equiv="refresh" content="0; url=http://mysps.de/Anwendung.exe"> die Erfahrung gemacht, dass es unter Firefox geht, aber unter IE 8 nicht geht.

Kann mir jemand Sagen, wieso IE8 dies unterbindet/verhindert.
Ziel ist es ein automatisches Laden der Anwendung auf dem Rechner des Servicepersonals zu gewährleisten, da verschieden Sps-Systeme verschiedene Anwendungen bedürfen und damit das Personal immer die aktuelle passende Anwendung zu SPS_System parat hat.

Zweite Frage: Wie kann ich es erreichen, das die Anwendung in C:/Temp auf dem Rechner gespeichert wird, sodass der Servicetechniker nur OK drucken muss. Schön währe auch, wenn die Anwendung danach noch automatisch ausgeführt werden würde.
Als Webserver ist ein IIS 5.0 verfügbar auf einen WINCE-System.

Ich selbst bin nicht besonders Erfahren in HTML/ASP/JAVASCRIPT und die Anwendung ist das Hauptziel.
Kann mich jemand auf eine Lösung für dieses Problem hinweisen.
Womit ich es Realisieren könnte ohne das ich noch ein Intensives Studium der WEB-Technologiern machen muss.

  1. Hallo,

    im Rahmen meiner Diplomarbeit programmiere ich eine Anwendung, die als „GUI-SPS User Interface“ arbeitet.

    wir reden hier schon von SPS, oder?

    Die Anwendung ist als WinAnwendung auf jeder SPS kopiert.

    Und die SPS hat einen integrierten Webserver? Na dann ...

    Der Benutzer besucht die Seite auf der SPS z. B. http://mysps.de/start.html

    Auch dir sei RFC 2606 ans Herz gelegt. Die Domain mysps.de existiert tatsächlich und steht zum Verkauf, aber ich glaube nicht, dass du der Inhaber bist, oder? Dann verwende bitte für Beispiele die Domainnamen, die genau dafür vorgesehen sind.

    Ich habe schon mit <a href="http://mysps.de/Anwendung.exe">Download</a>
    bzw. mit Redirekt <meta http-equiv="refresh" content="0; url=http://mysps.de/Anwendung.exe"> die Erfahrung gemacht, dass es unter Firefox geht, aber unter IE 8 nicht geht.

    Was heißt "nicht geht"?

    Kann mir jemand Sagen, wieso IE8 dies unterbindet/verhindert.

    Security.

    Ziel ist es ein automatisches Laden der Anwendung auf dem Rechner des Servicepersonals zu gewährleisten ...
    Zweite Frage: Wie kann ich es erreichen, das die Anwendung in C:/Temp auf dem Rechner gespeichert wird, sodass der Servicetechniker nur OK drucken muss. Schön währe auch, wenn die Anwendung danach noch automatisch ausgeführt werden würde.

    Absolut unmöglich. Was du gern realisieren würdest, ist die Horrorvision jedes Browserherstellers und vieler Browserbenutzer: Ein Programm wird heruntergeladen und ausgeführt, ohne dass man als Benutzer in den Vorgang eingreift.
    Nein, das höchste der Gefühle dürfte sein, dass ein Browser *fragt*, ob er die Anwendung nach dem Download sofort ausführen soll.

    Als Webserver ist ein IIS 5.0 verfügbar auf einen WINCE-System.

    Das ist in diesem Fall nebensächlich; die Einschränkungen bestehen auf der Clientseite.

    Kann mich jemand auf eine Lösung für dieses Problem hinweisen.
    Womit ich es Realisieren könnte ohne das ich noch ein Intensives Studium der WEB-Technologiern machen muss.

    Der Regelfall ist, wie schon beschrieben, dass eine Browsermeldung aufpoppt und den Benutzer fragt, ob er die Ressource direkt ausführen oder speichern möchte, und wenn speichern, dann wo. Allerdings sind die Browserhersteller inzwischen so vorsichtig geworden, dass z.B. Firefox bei EXE-Dateien gar nicht mehr die Option "direkt ausführen" anbietet. Möglicherweise im IE8 genauso. Outlook Express 6 und Outlook ab Version 2003 sind in der Defaulteinstellung auch so konfiguriert, dass sie EXE-Dateien als Mailanhänge dem Benutzer komplett vorenthalten.

    Was du möchtest, setzt daher ein erhebliches Maß an Kooperation auf der Anwenderseite voraus.

    So long,
     Martin

    --
    Ich bin 30. Ich demensiere apokalyptisch.
      (Orlando)
    1. hi $name,

      Der Regelfall ist, wie schon beschrieben, dass eine Browsermeldung aufpoppt und den Benutzer fragt, ob er die Ressource direkt ausführen oder speichern möchte, und wenn speichern, dann wo. Allerdings sind die Browserhersteller inzwischen so vorsichtig geworden, dass z.B. Firefox bei EXE-Dateien gar nicht mehr die Option "direkt ausführen" anbietet. Möglicherweise im IE8 genauso. Outlook Express 6 und Outlook ab Version 2003 sind in der Defaulteinstellung auch so konfiguriert, dass sie EXE-Dateien als Mailanhänge dem Benutzer komplett vorenthalten.

      Der IE8 (Vista) bietet noch die option "direkt ausführen" an, zumindest hat er das gestern bei der flash installation getan und fragte ober er speichern oder direkt loslegen soll.

      gruss
      shadow

      --
      Murphys Regeln für den Nahkampf:
      Es ist nicht die Kugel auf der dein Name steht, um die du dir Gedanken machen solltest, es ist die mit der Aufschrift "An den, den es betrifft".
    2. Danake für die Antwort,

      Hallo,

      im Rahmen meiner Diplomarbeit programmiere ich eine Anwendung, die als „GUI-SPS User Interface“ arbeitet.

      wir reden hier schon von SPS, oder?

      JA es ist eine Beckhoff SPS, die eine Webserver besitzt

      Die Anwendung ist als WinAnwendung auf jeder SPS kopiert.

      Und die SPS hat einen integrierten Webserver? Na dann ...

      Der Benutzer besucht die Seite auf der SPS z. B. http://mysps.de/start.html

      Auch dir sei RFC 2606 ans Herz gelegt. Die Domain mysps.de existiert tatsächlich und steht zum Verkauf, aber ich glaube nicht, dass du der Inhaber bist, oder? Dann verwende bitte für Beispiele die Domainnamen, die genau dafür vorgesehen sind.

      Ja ich bin nicht Besitzer und will es auch nicht werden und ich habe dies nicht bedacht. Ich gehe bei meine Programm sovieso über die IP, Mysps.de habe ich aus dem Kopf genommen. Nicht überlegend, ob es sie gibt.

      Ich habe schon mit <a href="http://mysps.de/Anwendung.exe">Download</a>
      bzw. mit Redirekt <meta http-equiv="refresh" content="0; url=http://mysps.de/Anwendung.exe"> die Erfahrung gemacht, dass es unter Firefox geht, aber unter IE 8 nicht geht.

      Was heißt "nicht geht"?

      Kann mir jemand Sagen, wieso IE8 dies unterbindet/verhindert.

      Security.

      Ziel ist es ein automatisches Laden der Anwendung auf dem Rechner des Servicepersonals zu gewährleisten ...
      Zweite Frage: Wie kann ich es erreichen, das die Anwendung in C:/Temp auf dem Rechner gespeichert wird, sodass der Servicetechniker nur OK drucken muss. Schön währe auch, wenn die Anwendung danach noch automatisch ausgeführt werden würde.

      Absolut unmöglich. Was du gern realisieren würdest, ist die Horrorvision jedes Browserherstellers und vieler Browserbenutzer: Ein Programm wird heruntergeladen und ausgeführt, ohne dass man als Benutzer in den Vorgang eingreift.

      In der Firma benutzen wir auch BACHMANN SPS. Sie bitten eine Lösung auf Basis von „Java Web Starterkit“. Ich wollte etwas Vergleichbares mit HTML/JAVASCRIPT/ASP erreichen und ein einfaches Referenzieren oder Redirekt war für mich die erste Lösung, die mir eingefallen ist. Sie funktionierte nur im Ansatz daher meine Frage hier im Forum nach Lösung oder alternativen Vorschlägen..

      Nein, das höchste der Gefühle dürfte sein, dass ein Browser *fragt*, ob er die Anwendung nach dem Download sofort ausführen soll.

      Wie kann ich erreichen, dass ich dem Benutzer FRAGE, ob er dies möchte. Web-Programierung ist für mich zum großen Teil fremde Welt, technische Systeme, da bin ich zuhause.

      Als Webserver ist ein IIS 5.0 verfügbar auf einen WINCE-System.

      Das ist in diesem Fall nebensächlich; die Einschränkungen bestehen auf der Clientseite.

      Ich möchte eine Seite/Skript erzeugen, der diesen Dienst anbietet.

      Kann mich jemand auf eine Lösung für dieses Problem hinweisen.
      Womit ich es Realisieren könnte ohne das ich noch ein Intensives Studium der WEB-Technologiern machen muss.

      Der Regelfall ist, wie schon beschrieben, dass eine Browsermeldung aufpoppt und den Benutzer fragt, ob er die Ressource direkt ausführen oder speichern möchte, und wenn speichern, dann wo. Allerdings sind die Browserhersteller inzwischen so vorsichtig geworden, dass z.B. Firefox bei EXE-Dateien gar nicht mehr die Option "direkt ausführen" anbietet. Möglicherweise im IE8 genauso. Outlook Express 6 und Outlook ab Version 2003 sind in der Defaulteinstellung auch so konfiguriert, dass sie EXE-Dateien als Mailanhänge dem Benutzer komplett vorenthalten.

      Eine Lösung mit Popup-Fenster würde akzeptabel sein. Wie kann ich es erreichen. TIP, Link oder Beispiel das würde mir Helfen.

      Was du möchtest, setzt daher ein erhebliches Maß an Kooperation auf der Anwenderseite voraus.

      Ich versuche die Wünsche meine Arbeitgeber umzusetzen, da die Software nur intern und nicht von Internet hier erreichbar sein wird. Es soll eine Vereinfachung der Arbeitsabläufe bitten. Nach dem Motto „USE und DON’T ASK“. Ich bin auch nicht begeistert davon.
      Du hast recht, es ist eine Horrorvorstellung für jeden Administrator und Browser Hersteller.

      So long,
      Martin

      »»

      Danke Martin

      Gruß
      Arkadius

      1. Hallo,

        In der Firma benutzen wir auch BACHMANN SPS. Sie bitten eine Lösung auf Basis von „Java Web Starterkit“. Ich wollte etwas Vergleichbares mit HTML/JAVASCRIPT/ASP erreichen und ein einfaches Referenzieren oder Redirekt war für mich die erste Lösung, die mir eingefallen ist. Sie funktionierte nur im Ansatz daher meine Frage hier im Forum nach Lösung oder alternativen Vorschlägen..

        Nein, das höchste der Gefühle dürfte sein, dass ein Browser *fragt*, ob er die Anwendung nach dem Download sofort ausführen soll.

        Wie kann ich erreichen, dass ich dem Benutzer FRAGE, ob er dies möchte. Web-Programierung ist für mich zum großen Teil fremde Welt, technische Systeme, da bin ich zuhause.

        nimm einen Java-Fat-Client über die Java-Webstart-Technologie. Da wird der Benutzer beim ersten Start gefragt, ob er diese Anwendung ausführen will. Mit einem entsprechenden Zertifikat ausgestattet, unterbleibt sogar die Abfrage.

        Als Webserver ist ein IIS 5.0 verfügbar auf einen WINCE-System.

        Das ist in diesem Fall nebensächlich; die Einschränkungen bestehen auf der Clientseite.

        Ich möchte eine Seite/Skript erzeugen, der diesen Dienst anbietet.

        Kann mich jemand auf eine Lösung für dieses Problem hinweisen.
        Womit ich es Realisieren könnte ohne das ich noch ein Intensives Studium der WEB-Technologiern machen muss.

        Du schreibst eine kleine GUI zu folgender Geschichte:

        a) in einer Listbox wird die Liste der SPSen angezeigt
        b) bei Doppelklick auf eine SPS (bzw. Auswahl und anschließendem Klick auf
           einen Button) wird die von Dir gewünschte Anwendung vom Webserver
           der ausgewählten SPS heruntergeladen (durch Aufruf eines externen
           Programmes wie wget oder durch von Dir geschriebenen Code. Mit heutigen
           Entwicklungsumgebungen und Frameworks ist dies in einer ein- bis
           zweistelligen Anzahl von Codezeilen erledigt.
        c) Start der eigentlichen Anwendung (eine Zeile plus Fehlerbehandlung)

        Alternativ Batchdatei mit einem Parameter (die Ziel-SPS).

        Dadurch dass Du *keinen* Browser verwendest, unterliegst Du auch nicht dessen Sicherheitseinstellungen, die für das normale Surfen im Internet zwingend erforderlich sind.

        Dies zöge ich einer IE-ActiveX-Vertraute-Zone-plus-weitere-Einstellungen-Lösung definitiv vor. Letztere könntest Du eventuell über Gruppenrichtlinien im Active Directory setzen, es bliebe jedoch komplexer, komplizierter und anfälliger, weil Du im IE Tore öffnen musst, die anschließend nicht nur Deiner Anwendungen offen stehen.

        Freundliche Grüße

        Vinzenz

      2. Hallo,

        wir reden hier schon von SPS, oder?
        JA es ist eine Beckhoff SPS, die eine Webserver besitzt

        ja, okay. Ich wollte nur sichergehen, dass wir tatsächlich das gleiche meinen.

        Ich habe schon mit <a href="http://mysps.de/Anwendung.exe">Download</a>
        bzw. mit Redirekt <meta http-equiv="refresh" content="0; url=http://mysps.de/Anwendung.exe"> die Erfahrung gemacht, dass es unter Firefox geht, aber unter IE 8 nicht geht.

        Wenn du sagst, dass es "unter Firefox geht", meinst du vermutlich nur den Download und das lokale Speichern der EXE-Datei. Denn wie ich weiter unten schon ausführte, bietet der Firefox seit Version 3 die Option "Ausführen" bei EXE-Dateien gar nicht mehr an.
        Einen IE8 habe ich zum Testen nicht zur Hand. Meinst du mit "geht nicht" etwa, dass du die EXE-Datei auch nicht herunterladen und speichern kannst?

        Wie kann ich erreichen, dass ich dem Benutzer FRAGE, ob er dies möchte. Web-Programierung ist für mich zum großen Teil fremde Welt, technische Systeme, da bin ich zuhause.

        Für mich stellt sich die Situation so dar:
        1. Firefox-Nutzer müssen so schlau sein, die Datei herunterzuladen, zu speichern, und dann mit Windows-Mitteln (idR also mit dem Windows-Explorer) die gespeicherte Datei wieder finden und ausführen.
        2. IE8-Nutzer müssen die Sicherheitseinstellungen ihres Browsers umkonfigurieren, der in der Default-Einstellung anscheinend den Download von EXE-Dateien komplett verweigert, und haben dann im zweiten Schritt die gleiche Situation wie die Firefox-Nutzer unter 1.

        Ich sehe nichts, was du von der SPS/Webserver-Seite aus tun könntest, um das Prozedere zu vereinfachen - es sei denn, du implementierst die gesamte Anwendung webbasiert direkt im Webserver der SPS. Dann braucht niemand etwas herunterzuladen, sondern kann mit jedem Browser direkt auf die SPS zugreifen.

        Eine Lösung mit Popup-Fenster würde akzeptabel sein. Wie kann ich es erreichen. TIP, Link oder Beispiel das würde mir Helfen.

        Ältere Browser verwenden, die noch nicht so heikel sind ... ;-)

        Ich versuche die Wünsche meine Arbeitgeber umzusetzen, da die Software nur intern und nicht von Internet hier erreichbar sein wird. Es soll eine Vereinfachung der Arbeitsabläufe bitten.

        Bitten? Oder bieten?

        Ciao,
         Martin

        --
        Wenn du beim Kochen etwas heißes Wasser übrig hast, friere es ein.
        Heißes Wasser kann man immer gebrauchen.
        1. Hallo,

          1. Firefox-Nutzer müssen so schlau sein, die Datei herunterzuladen, zu speichern, und dann mit Windows-Mitteln (idR also mit dem Windows-Explorer) die gespeicherte Datei wieder finden und ausführen.

          zum Beispiel:

          a) im Kontextmenü des Downloads im Download-Fenster (Strg+J) oder
             Extras->Downloads, falls es nicht sowieso angezeigt wird, einfach
             auf Öffnen klicken

          oder

          b) im Kontextmenü den Punkt "Beinhaltenden Ordner anzeigen" auswählen,
             und die ausgewählte Datei (wird korrekt vorbelegt) doppelklicken.

          Dass Windows-Mittel bemüht werden, merkt der Benutzer nicht (wenn er es nicht eh schon weiß).

          Freundliche Grüße

          Vinzenz

          1. Hallo Vinzenz,

            1. Firefox-Nutzer müssen so schlau sein, ...
              a) im Kontextmenü des Downloads im Download-Fenster ...
              b) im Kontextmenü den Punkt "Beinhaltenden Ordner ...

            ja, *wir* wissen das. Aber der weniger IT-affine Anwender weiß das nicht unbedingt. Der klickt auf einen Link, dann poppt ein Fenster auf und fragt, wohin speichern, er klickt einfach auf "OK" oder so, und sitzt dann davor und fragt sich: "Ja, und wo isses jetzt?" - Ich kenne solches Verhalten, sogar von Leuten, die beruflich mit dem PC arbeiten.

            Dass Windows-Mittel bemüht werden, merkt der Benutzer nicht (wenn er es nicht eh schon weiß).

            Stimmt.

            Ciao,
             Martin

            --
            Das Leben ist lebensgefährlich und endet meistens tödlich.
  2. Der Benutzer soll sich über den vorhanden Webserver der Anlage die Anwendung-von der jeweiligen SPS holen.

    Meine Lösung bis jetzt:
    Der Benutzer besucht die Seite auf der SPS z. B. http://mysps.de/start.html
    und kopiert die WinAnwendung auf seinen Rechner, startet Sie und verbindet sich mit der SPS.

    Ich habe schon mit <a href="http://mysps.de/Anwendung.exe">Download</a>
    bzw. mit Redirekt <meta http-equiv="refresh" content="0; url=http://mysps.de/Anwendung.exe"> die Erfahrung gemacht, dass es unter Firefox geht, aber unter IE 8 nicht geht.

    Kann mir jemand Sagen, wieso IE8 dies unterbindet/verhindert.

    Wenn ich Dich richtig verstehe soll "aus dem Web" eine Exe-Datei auf einen Klick (oder am besten ganz ohne) heruntergeladen und sofort ausgeführt werden. Wenn Du einen Moment über aktuelle Bedrohungsszenarien (Würmer/Trojaner & Co) nachdenkst wird Dir auffallen, warum es normal ist, daß das nicht einfach so funktioniert ...

    Ich denke die sauberste Lösung wäre ein Windows-Programm bzw. Script, das normal über das Dateisystem geladen wird und seinerseits per http die exe runterlädt und startet.