Announcement

Collapse
No announcement yet.

Programmfernsteuerung zwischen Server und Clienten mit Sockets!!

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Programmfernsteuerung zwischen Server und Clienten mit Sockets!!

    Hi Leute, ich bin noch relativ neu hier in der Delphi-Szene und nun hab ich das Problem, dass ich ein Server- sowie ein Client-Programm gecodet habe, welche sich übers Netz fernbedienen lassen sollen!

    Dafür reicht mir eigentlich schon das wissen, wie man z.B. die <TrackBar1.Position> beim Clienten durch einen <ButtonClick> beim Server um 1 nach rechts verschiebt (also um eins erhöht)!

    Mir ist irgendwie nicht ganz klar wie ich diesen Befehl übertragen soll!
    Ist wahrscheinlich ne blöde Frage, aber find auch nirgends dazu eine Doku!
    In der Hilfe von Delphi 5 steht was von "TCustomWinSocket.DefaultHandler",... kann ich damit was Gescheites machen? Wenn ja, wie? Quelltext wäre erwünscht!!!

    Danke im Vorraus!

    Mfg, Dookie.

  • #2
    Hallo!!<p>
    Also das ganze ist garnicht so schwer. Eine ganz einfache Variante wäre zum Beipiel: <p> Du definierst dir einen String der dein 'Befehl' sein soll. Im ButtonClick Ereignis schickst du diesen Befehl dann zum Client, wo du dann auf den Befehl reagierst!<br>
    Ich weiß nicht welche Komponenten du verwendest. Am besten benutzt du die Indy Komponenten da die 'normalen' Sockets an der Version des Windows Sockets gebunden sind. Und ích habe persönlich schlechte erfahrungen mit diesen Sockets gemacht!!<br>
    Der volgende Quelltext benutzt den TServerSocket und TClientSocket. Wenn du die Indy Komponenten benutzen möchtest, dann meld dich nochmal und ich gib dir dazu auch en bisschen Quelltext!
    <pre>
    //Server
    Const
    MeinBefehl = '<Step>';

    procedure ButtonClick;
    begin
    ServerSocket.Socket.SendText(MeinBefehl);
    end;

    //client
    const
    MeinBefehl = '<Step>';
    //OnRead Ereignis im ClientSocket
    procedure OnRead;
    begin
    if Socket.ReReceiveText = MeinBefehl then
    TrackBar.Step;
    end;
    </pre>
    Der Obige Quelltext soll dir das System erklären. Er ist nicht lauffähig. Du benötigst einen nonBlocking verbindung.<p>
    Wenn du noch fragen hast meld dich nochmal!!<p>mfg<p>Danie

    Comment


    • #3
      Hey Daniel!
      Vielen Dank für deinen Tipp! Irgendwie hab ich da voll zu kompliziert gedacht! Naja, gut, muss ich für alles halt ne eigene Abfrage (+Befehl) machen!
      Aber ne ganze Prozedur oder nen Befehl fernausführen oder sowas geht nicht, oder?
      Und mit Indy hatte ich bisher noch nix zu tun!! Was ist daran anders/besser?

      Dank nochma!

      Dookie

      Comment


      • #4
        Hi<p>
        Du kannst alles in einem Program/Formular "Fernsteuern"!! Es ist ja egal ob du 'TrackBar.Step' oder 'MeineProcedure' ausführst!!<p>
        Indy hat den vorteil das du nicht von der Windows Version mit der du Arbeitest abhängig bist!! Die 'Standart' Delphi Client + Serversockets setzten auf dem WinSock auf. D.h. du hast bei Windows 95 (ohne Update) weniger funktionen als bei Win 98!!! <p>mfg<p>Danie

        Comment


        • #5
          Hallo ich habe ein ähnlichen Problem zu lösen, nutze Delphi 6
          und würde gern die INDY Konponenten anwenden, ich hätte interesse
          an dem Quelltext.

          Danke Dir, Klau

          Comment


          • #6
            Post mal deine eMail Adresse!! Dann shcicke ich dir was!

            Comment


            • #7
              Hallo, ich hätte auch an einem Beispiel interesse, denn die Indy-Komponenten habe ich auch noch nicht benutzt. Kannst du mir auch das Beispiel schicken?<br><br>Gruß & Danke Alex

              Comment


              • #8
                Hi Daniel,
                kannst du mir bitte auch den Quelltext schicken?
                Meine EMail-Adresse: [email protected]

                Vielen Dank schon mal im Voraus.

                mfg
                And

                Comment

                Working...
                X