leni: Per IE das Programm RealVNC starten

Hallo,

ich möchte in unser Intranet einen Button einbauen, der sobald man draufklickt RealVNC Server startet.

Die exe liegt auf dem Server:
192.168.69.203/htdocs/VNC/VNC.exe

Zurzeit habe ich es so gemacht, dass man eine Bat-Datei downloadet, die diese Datei auf den Client-Rechner lädt ( C:/Temp ) und dann dort ausführt. ( Nachteil: die Dateien werden nicht wieder gelöscht )

Ist es nicht möglich diese vom Server zu starten??
Exec() und Shell_exec() will nicht so recht!

Oder eine Bat Datei starten, womit man die exe auf dem Server starten tut und damit VNC am Client startet!

Habt ihr ein paar Ideen?

THX

leni

  1. Hallo leni!

    ich möchte in unser Intranet einen Button einbauen, der sobald man draufklickt RealVNC Server startet.
    Die exe liegt auf dem Server: 192.168.69.203/htdocs/VNC/VNC.exe
    Habt ihr ein paar Ideen?

    Ich fürchte ich hab die Frage noch nicht verstanden:
    <a href="192.168.69.203/htdocs/VNC/VNC.exe">VNC starten</a>

    Viele Grüße

    H-P Ortner

    1. Damit macht er ja einen Download der Datei VNC.exe.

      Dies will ich ja nicht bezwecken, sondern dass dies im Hintergrund passiert.

      Also z.B.:

      <?php
      exec('192.168.69.203\htdocs\VNC\VNC.exe' );
      ?>

      1. Hallo leni!

        Damit macht er ja einen Download der Datei VNC.exe.

        Dies will ich ja nicht bezwecken, sondern dass dies im Hintergrund passiert.

        Also z.B.:

        <?php
        exec('192.168.69.203\htdocs\VNC\VNC.exe' );
        ?>

        Soll die Datei am Server oder am Client ausgeführt werden?

        Viele Grüße

        H-P Ortner

      2. hi

        ohne mich großartig mit PHP oder exec beschäftigt zu haben, kann ich mit vorstellen, daß exec evtl. einen absoluten lokalen pfad erwartet.

        so long
        Ole
        (8-)>

        --
        Stickstoff eignet sich nicht für Handarbeiten.
      3. Hallo leni!

        Dies will ich ja nicht bezwecken, sondern dass dies im Hintergrund passiert.

        Also z.B.:

        <?php
        exec('192.168.69.203\htdocs\VNC\VNC.exe' );
        ?>

        Dein Problem wirst du mit PHP nicht lösen können, da dies auf dem Server läuft, du aber VNC auf dem Client-Rechner starten möchtest. Da ich mich damit aber absolut nicht auskenne, kann ich dir leider auch nicht weiter helfen..

        Servus

        --
        flowh .
        Es ist nicht deine Schuld, dass die Welt ist, wie sie ist, es wär nur deine Schuld, wenn sie so bleibt.
           - Die Ärzte
        1. Dein Problem wirst du mit PHP nicht lösen können, da dies auf dem Server läuft, du aber VNC auf dem Client-Rechner starten möchtest. Da ich mich damit aber absolut nicht auskenne, kann ich dir leider auch nicht weiter helfen..

          Richtig, php ist serverseitig und JS ist clientseitig! Deswegen habe ich mir gedacht, dass das PHP eine Bat-Datei ( die auf dem Server liegt) ausführen könnte, die vom Client aus auf die Dateien die auf dem Server liegen zugreift und ausführt.

          Aber ich bekomme exec() nicht zum laufen! Nichts lädt er, weder exe noch Bat Dateien! Keine Fehlermeldung nichts!

          Nur zur Info, das Programm nennt sich "RealVNC Server", was leicht verwirrent ist, da dies auf dem Client installiert wird!

          leni

          1. Hallo leni!

            Aber ich bekomme exec() nicht zum laufen! Nichts lädt er, weder exe noch Bat Dateien! Keine Fehlermeldung nichts!

            Du sagst doch selber,

            php ist serverseitig und JS ist clientseitig.

            PHP auf dem Server kann doch nicht einfach eine Datei auf dem Client aufrufen, was meinst du was man damit alles anrichten könnte?
            exec() führt die .bat- bzw. .exe-Datei auf dem Server aus, wovon der Client natürlich nicht mitbekommt...

            Servus

            --
            flowh .
            Es ist nicht deine Schuld, dass die Welt ist, wie sie ist, es wär nur deine Schuld, wenn sie so bleibt.
               - Die Ärzte
      4. Hallo leni!

        Damit macht er ja einen Download der Datei VNC.exe.

        Dies will ich ja nicht bezwecken, sondern dass dies im Hintergrund passiert.
        <?php
        exec('192.168.69.203\htdocs\VNC\VNC.exe' );
        ?>

        Wie gefällt dir das:

          
        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
        <html>  
        <head>  
         <title>Test</title>  
         <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">  
         <SCRIPT LANGUAGE="VBScript">  
         <!--  
          Function teste()  
            Dim WshShell  
            Set WshShell = CreateObject ("WScript.Shell")  
            WshShell.Run "\\\\192.168.69.203\\htdocs\\VNC\\VNC.exe"  
          End Function  
         -->  
        </script>  
        </head>  
        <body>  
        <form name="form1">  
        <input type="button" value="Test" onClick='teste()'>  
        </form>  
        </body>  
        </html>  
        
        

        Wenn die exe unter file:\192.168.69.203\htdocs\VNC\VNC.exe freigegeben ist.

        Viele Grüße

        H-P Ortner

        1. Quote:
          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
          <html>
          <head>
           <title>Test</title>
           <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
           <SCRIPT LANGUAGE="VBScript">
           <!--
            Function teste()
              Dim WshShell
              Set WshShell = CreateObject ("WScript.Shell")
              WshShell.Run "\\192.168.69.203\htdocs\VNC\VNC.exe"
            End Function
           -->
          </script>
          </head>
          <body>
          <form name="form1">
          <input type="button" value="Test" onClick='teste()'>
          </form>
          </body>
          </html>

          Leider funktioniert es immer noch nicht!
          Fehler: ActiveX-Komonenten kann kein Objekt erstellen:'WScript.Shell'

          Zeile 10 Zeichen 5

          :-(

          1. Hallo leni!

            Leider funktioniert es immer noch nicht!
            Fehler: ActiveX-Komonenten kann kein Objekt erstellen:'WScript.Shell'

            Zeile 10 Zeichen 5

            :-(

            Hast du die Datei lokal erstellt und geöffnet oder vom Server?
            Welches Betriebssystem läuft am Client?

            Viele Grüße

            H-P Ortner

            1. Ah ich habs! Ich hab die Einstellungen auf niedrig gestellt! Lokale Dateien öffnet er! Aber auf den Server kommt er nicht!
              Der Netzwerkpfad wurde nicht gefunden! Damn! Warum? Es stimmt doch alles!

              Dumm ist hier nur das immer so ne Meldung kommt: Ein ActiveX Steuerelement dieser Seite ist möglicherweise in Wechselwirkung mit anderen Elementen dieser Seite nicht sicher! Möchten sie zulassen??

              Kann man das deaktivieren?

              1. Hallo leni!

                Ah ich habs! Ich hab die Einstellungen auf niedrig gestellt! Lokale Dateien öffnet er! Aber auf den Server kommt er nicht!

                Gib den Server zu den sicheren Sites

                Der Netzwerkpfad wurde nicht gefunden! Damn! Warum? Es stimmt doch alles!

                Kannst du am Client \192.168.69.203\htdocs\VNC\VNC.exe auführen?

                Ist VNC.exe am Client auch installiert? Ist das im Pfad oder ist es auf allen Clients im selben Verzeichnis? Wenn ja kannst du es ja lokal starten:

                WshShell.Run "d:\vnc\vnc.exe"
                oder
                    WshShell.Run "vnc.exe"

                Dumm ist hier nur das immer so ne Meldung kommt: Ein ActiveX Steuerelement dieser Seite ist möglicherweise in Wechselwirkung mit anderen Elementen dieser Seite nicht sicher! Möchten sie zulassen??
                Kann man das deaktivieren?

                Nein, wenn der Browser ganz böse Sachen (Programme startet die zB die Festplatte löschen) macht, sollte er vorher doch einmal fragen.

                Viele Grüße

                H-P Ortner

                1. Also VNC ist schon auf teils auf allen Rechner installiert, aber genau deswegen will ich es ohne Inst. hinbekommen.

                  Und zu allem Übel musste ich feststellen, dass bisher dieses VBScript nur auf den lokalen Bereich zugegriffen hat! Also mit \\192.168.69.203\htdocs\VNC\VNC-starten.bat geht es nicht!

                  Ich bin wie verrückt am ausprobieren! Aber es will nicht! Die php Datei liegt im Ordner htdocs!

                  leni

                  1. Hallo leni!

                    Und zu allem Übel musste ich feststellen, dass bisher dieses VBScript nur auf den lokalen Bereich zugegriffen hat! Also mit \\192.168.69.203\htdocs\VNC\VNC-starten.bat geht es nicht!

                    Mein Fehler - richtig ist:
                        WshShell.Run "\192.168.69.203\htdocs\VNC\VNC-starten.bat"

                    Aber wenn wir wieder zu meiner ersten Nachricht zurückkehren hat sich nicht viel geändert.
                    mit <a href="... musste der Benutzer sich entscheiden, das Programm auszuführen und nicht zu speichern.

                    Jetzt muss er das ActiveX zulassen und soll es nicht ablehnen.

                    Eventuell gibt es aber noch ganz andere Möglichkeiten. Läuft VNC.exe als Dienst?

                    Viele Grüße

                    H-P Ortner

            2. Juhuuuu! Es geht! Dies wurde jetzt mit VBScript gelöst! Ist dies aber auch per PHP möglich? Denn diese Meldung ist eigentlich schon nervig und sowieso muss ich dann alle Clients auf sehr niedrige Sicherheitsstufe im lokalen Netzwerk setzen!

              Idee??

              THX leni

              1. Hallo leni!

                Ist dies aber auch per PHP möglich?

                Also nochmal:
                Server: PHP
                  ^
                  |
                 HTTP
                  |
                  v
                Client: HTML/JS/VBSCRIPT

                Der Server, der evtl. über PHP verfügt, kommuniziert mit dem Client, der evtl. HTML, CSS, JavaScript,... verarbeiten kann, und zwar via HTTP.

                D.h., wenn du auf dem Client ein Programm ausführen willst, dann musst du das mit einer auf dem _Client_ verfügbaren Technik (JavaScript, JScript, etc...) realisieren. Das was auf dem Server abläuft, ist für den Client uninteressant, da er vom Server bloß das fertige HTML (+evtl. CSS,JavaScript,...) empfängt und verarbeiten kann.

                Servus

                --
                flowh .
                Es ist nicht deine Schuld, dass die Welt ist, wie sie ist, es wär nur deine Schuld, wenn sie so bleibt.
                   - Die Ärzte
              2. gudn tach!

                Denn diese Meldung ist eigentlich schon nervig und sowieso muss ich dann alle Clients auf sehr niedrige Sicherheitsstufe im lokalen Netzwerk setzen!

                mit dem ms-ie kenne ich mich nicht mehr so aus, aber ich vermute, dass man die meldung vielleicht loswird, wenn man die entsprechenden einstellungen bei ihm anpasst:
                extras -> internetoptionen -> lokales intranet -> stufe anpassen ->
                und dann alles, was activex heisst, auf "aktivieren" setzen.
                ist allerdings sicherheitstechnisch nicht unbedenklich.

                in einem richtigen ms-netzwerk geht doch sowas (ms-ie-einstellungen) bestimmt auch ueber active-directory. hmm, aber dann koennte man auch gleich einheitlich auf allen computern vnc installieren...

                prost
                seth

  2. gudn tach!

    habe ich die richtig verstanden(?):

    du hast mehrere computer A_1, A_2, ..., A_n und einen computer B.
    B verfuegt ueber einen webserver, auf den alle anderen A_i via http zugreifen duerfen.
    ein user an einem A_i soll nun einen vnc-server auf seinem computer starten. allerdings soll er die dafuer noetige software von B (192.168.69.203/htdocs/VNC/VNC.exe) beziehen. und das moeglichst ohne sie herunterzuladen. (warum?)

    falls ich das richtig verstanden habe: warum soll er sie jedes mal von B beziehen? was spricht dagegen, dass auf allen A_i der vnc-server fest installiert und bei bedarf gestartet wird?
    wie lange soll ein vnc-server jeweils laufen?

    ich möchte in unser Intranet einen Button einbauen, der sobald man draufklickt RealVNC Server startet.

    du koenntest ja auf allen A_i vorher die vnc-server-software installieren. dann braucht ein user wirklich nur noch einen knopf zum aktivieren druecken.

    Zurzeit habe ich es so gemacht, dass man eine Bat-Datei downloadet, die diese Datei auf den Client-Rechner lädt ( C:/Temp ) und dann dort ausführt. ( Nachteil: die Dateien werden nicht wieder gelöscht )

    warum ist das ein nachteil?
    du koenntest ein abmelde-script schreiben, welches diese daten beim herunterfahren loescht.

    Ist es nicht möglich diese vom Server zu starten??
    Exec() und Shell_exec() will nicht so recht!

    exec startet die software auf dem computer mit dem webserver (B).

    Oder eine Bat Datei starten, womit man die exe auf dem Server starten tut und damit VNC am Client startet!

    normalerweise wird die datei immer heruntergeladen in irgendein temp-verzeichnis und dort ausgefuehrt. runterladen muss man den kram sowieso, weil er ja sonst nicht ausgefuehrt werden kann. ob man eine datei direkt in den ram laden kann, weiss ich nicht. aber das sollte bei ein paar kilobyte, die die software gross ist, eh woscht sein, oder nicht?

    prost
    seth

  3. Hallo.

    Zurzeit habe ich es so gemacht, dass man eine Bat-Datei downloadet, die diese Datei auf den Client-Rechner lädt ( C:/Temp ) und dann dort ausführt. ( Nachteil: die Dateien werden nicht wieder gelöscht )

    Dann erweitere die Batch-Datei doch um ein "del" mit passenden Parametern.
    MfG, at