none
Scripting in Webseite anbieten RRS feed

  • Frage

  • Hallo,

    ich kenne aus früheren Anwendungen, dass diese eine Scripting Engine mit z.B. VBScript anbieten. Speziell VBScript hatte den Vorteil, dass von hier COM Server instantiiert und/oder der Zugriff auf das Filesystem möglich war.

    Nun möchte ich etwas vergleichbares in einer Web-basierte Anwendung anbieten. Die Web-Anwendung könnte durchaus die Installation von bestimmten Komponenten auf dem Rechner voraussetzen.

    Was wären eure Ansätze? Ich habe die Script Sprache aufgeschnappt. Wäre dies etwas vergleichbares zu VBScript, welches aus der Web-Anwendung ausgeführt werden könnte?

    Vielen Dank
    Christian

    Mittwoch, 4. Mai 2016 19:38

Antworten

  • Hi Christian,
    mit der Forderung, VBScript im Client unter Steuerung eines Browsers abzuarbeiten, reduzierst Du die Vielfalt der Geräte/Betriebssysteme/Browser auf ein Minimum und musst die Sicherheitseinstellungen im Client stark reduzieren, was dann Tür und Tor für Schadprogramme öffnen kann. Wenn Du wirklich im Client mit Windows Betriebssystem VB-Programme abarbeiten willst, dann nutze ClickOnce.

    --
    Viele Grüsse
    Peter Fleischer (MVP, Partner)
    Meine Homepage mit Tipps und Tricks
    Kommas richtig setzen!
    Schüler sagen, Lehrer haben es gut.
    Schüler, sagen Lehrer, haben es gut

    Donnerstag, 5. Mai 2016 09:06
  • Hallo Christian,

    der Ansatz, von einer Web Applikation heraus auf den Client zuzugreifen halte ich für sehr kritisch. Zugriff auf das Filesystem und auch auf COM Objekte sehe ich als sehr kritisch an. Der Client bildet halt eine Art "Sandkasten", der nicht verlassen werden kann.

    Peter hat bereits als eine Möglichkeit ClickOnce Applikationen erwähnt.

    Es gibt eine Möglichkeit, Managed User Controls einzubinden. Das ist aber mit .Net 4.5 entfallen und das ist auch ein Vorgehen, das ich nicht wirklich unterstützen würde.

    Wenn Du nichts gegen eine Installation von Komponenten hast, dann scheint mir ClickOne wirklich eine gute Sache zu sein. Damit hast Du aber dann keine Web-Applikation mehr sondern Du hast dann eine Desktop Applikation, die über eine Webseite installiert / gestartet wurde.

    Diese Applikation kann dann in C# oder VB.Net geschrieben sein und kann dann Ihrerseits auch gerne VB-Scripte oder ähnliches ausführen. Du hast hier dann wieder alle Möglichkeiten der Desktop Applikation.

    Viele Grüße,

    Konrad Neitzel

    Donnerstag, 5. Mai 2016 09:23

Alle Antworten

  • Hallo Christian,

    ich verstehe die Anforderungen noch nicht ganz genau. 

    Wo soll der Script-Code z.B. ablaufen?

    Wenn es auf dem Server laufen soll, dann kannst Du per Visual C# durchaus Scriptsprachen einbinden. Das geht von einer Ausführung in Deinem Code hin zu einem einfachen schreiben einer Datei, die dann ausgeführt wird. Für beides könnte man verschiedene Quellen aufzeigen, in denen das gezeigt wird. Das öffnet aber natürlich auch Tür und Tor für Angriffe!

    Auf dem Client wird es etwas schwerer. Hier läuft ja auch alles innerhalb des Browsers und hat so sehr enge Grenzen was denn überhaupt so möglich ist. So könnte JavaScript vom Client an den Server gesendet werden (z.B. über ein Eingabefeld) und dann wird eine neue Seite erstellt, in der dies mit enthalten ist. Ansonsten kann man in JavaScript natürlich auch eine Scripting Engine schreiben. Mag also sein, dass es sowas schon gibt.

    Wenn Du Deine Vorstellungen deutlicher beschreibst, dann wäre eine konkretere Hilfestellung durchaus möglich.

    Viele Grüße,

    Konrad

    Donnerstag, 5. Mai 2016 05:45
  • Hallo Konrad,

    vielen Dank für Deine Hilfe!

    Der Script-Code sollte am Client laufen. Ich würde gerne die Mächtigkeit von VBScript (Ausführung am Client) gerne in eine Web-Lösung anbieten. Ein Brücke vom Browser zum Client wäre ok, d.h. die Nutzung der Script-Funktionalität kann durchaus die Installation von bestimmten Komponenten voraussetzen.

    Viele Grüße,
    Christian

    Donnerstag, 5. Mai 2016 08:33
  • Hi Christian,
    mit der Forderung, VBScript im Client unter Steuerung eines Browsers abzuarbeiten, reduzierst Du die Vielfalt der Geräte/Betriebssysteme/Browser auf ein Minimum und musst die Sicherheitseinstellungen im Client stark reduzieren, was dann Tür und Tor für Schadprogramme öffnen kann. Wenn Du wirklich im Client mit Windows Betriebssystem VB-Programme abarbeiten willst, dann nutze ClickOnce.

    --
    Viele Grüsse
    Peter Fleischer (MVP, Partner)
    Meine Homepage mit Tipps und Tricks
    Kommas richtig setzen!
    Schüler sagen, Lehrer haben es gut.
    Schüler, sagen Lehrer, haben es gut

    Donnerstag, 5. Mai 2016 09:06
  • Hallo Christian,

    der Ansatz, von einer Web Applikation heraus auf den Client zuzugreifen halte ich für sehr kritisch. Zugriff auf das Filesystem und auch auf COM Objekte sehe ich als sehr kritisch an. Der Client bildet halt eine Art "Sandkasten", der nicht verlassen werden kann.

    Peter hat bereits als eine Möglichkeit ClickOnce Applikationen erwähnt.

    Es gibt eine Möglichkeit, Managed User Controls einzubinden. Das ist aber mit .Net 4.5 entfallen und das ist auch ein Vorgehen, das ich nicht wirklich unterstützen würde.

    Wenn Du nichts gegen eine Installation von Komponenten hast, dann scheint mir ClickOne wirklich eine gute Sache zu sein. Damit hast Du aber dann keine Web-Applikation mehr sondern Du hast dann eine Desktop Applikation, die über eine Webseite installiert / gestartet wurde.

    Diese Applikation kann dann in C# oder VB.Net geschrieben sein und kann dann Ihrerseits auch gerne VB-Scripte oder ähnliches ausführen. Du hast hier dann wieder alle Möglichkeiten der Desktop Applikation.

    Viele Grüße,

    Konrad Neitzel

    Donnerstag, 5. Mai 2016 09:23