Announcement

Collapse
No announcement yet.

bräuchte Tipps für COM & Co Neuling

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

  • bräuchte Tipps für COM & Co Neuling

    Hallo Leute,
    ich habe die Aufgabe einen Programmverteiler zu schreiben mit welchem verschiedene andere Delphi-Anwendungen (mit diversen Startparametern) aufgerufen werden sollen.

    Meine Frage lautet nun, ob mir da jemand quasi einen Anhaltspunkt geben könnte wie ich die ganze Angelegenheit anpacken kann.

    Bin auch sehr dankbar für ein Beispiel oder eine Buchempfehlung :-)

    Vielen Dank
    Oezhan

  • #2
    Hallo Oezhan,

    willst Du nur andere Programme starten? Dann schau Dir mal ShellExecute(...) an. Wenn Du mehr Kontrolle brauchst schau Dir mal CreateProcess(...) an.

    Näheres findest Du hier: http://www.bcbdev.com/faqs/faq71.htm (ist zwar für den BCB, aber vielleicht kannst Du ja trotzdem was damit anfangen).

    Grüße Joche

    Comment


    • #3
      Hallo Jochen,

      also die Programme die ich starten möchte sind Eigenentwicklungen in Delphi und erfordern alle Passworteingaben.
      Und da die Passwörter der verschiedenen Programme meistens gleich sind, wollte ich die Passworteingabe nun automatisieren. Sprich man gibt das Passwort nur einmalig im Verteiler ein und wählt dann die gewünschte Anwendung, die dann darauf hin gestartet werden kann.

      ShellExecute kenne ich vom Starten von Excel, Word oder ähnlichem - ich vermute das funktioniert in meinem Fall nicht.

      Oezha

      Comment


      • #4
        Hallo Oezhan,

        warum sollte es nicht funktionieren? Du kannst auch bei ShellExecute Parameter übergeben.

        Folgenden Aufruf setze ich im BCB ein, um ein anderes selbstgeschriebenes Programm zu starten. Hierbei wird dem Programm der Benutzername (in AnsiString UserName) mit übergeben.
        <PRE>
        ShellExecute(NULL,
        "open",
        FAUebergabeExe.c_str(),
        UserName.c_str(),
        "",
        SW_SHOWDEFAULT);
        </PRE>
        Es spricht nichts dagegen hier auch noch das Passwort zu übergeben.

        Grüße Joche

        Comment


        • #5
          Wenn jemand dann die Möglichkeit hat, die Exe-Datei auszutauschen, bekommt er das Passwort frei Haus geliefert Und genau da soll das Passwort ja vor schützen?<p>
          Schöne Grüße, Mario Noac
          Schöne Grüße, Mario

          Comment


          • #6
            Hallo Mario,

            berechtigter Einwand. Aber wenn die Passwörter eh meistens gleich sind... Notfalls das Passwort verschlüsseln. Eine absolut sichere Mehtode eine Passwort zu übergeben gibt es meiner Meinung nach nicht.

            Grüße Joche

            Comment


            • #7
              Naja, man könnte einen Hash übergeben und nur den vergleichen. Damit lassen sich keine Rückschlüsse auf das Passwort, was dahinter steht, schliessen.<p>
              Schöne Grüße, Mario Noac
              Schöne Grüße, Mario

              Comment


              • #8
                Hallo Jochen,

                gut hab ich verstanden - es funktioniert auch :-)

                Mein Problem liegt dann wohl eher darin, dass ich nicht weiß wie ich diesen Parameter - das Passwort - in dem aufgerufenen Programm zu fassen bekomme.
                Weil ich ja das übergebene Passwort trotzdem noch auf Richtigkeit prüfen muss, also sprich nach dem ShellExecute, wenn versucht wird die Anwendung zu öffnen.

                Hoffentlich habe ich das nicht zu wirr erklärt...

                Oezha

                Comment


                • #9
                  Hallo Oezhan,

                  ich hoffe das ist in Delphi wie im BCB, ansonsten muß hier mal ein Delphianer helfen...

                  Zugriff auf die übergebenen Parameter erhält man mit ParamStr(x), wobei x der Index des Kommandozeilenparameters ist. Hinweis: In ParamStr(0) steht immer der Pfad und der Dateiname des ausgeführten Programms.

                  Grüße Joche

                  Comment


                  • #10
                    Hallo Jochen,

                    vielen Dank für Deine Hilfe,
                    hat alles prima geklappt!!

                    Oezha

                    Comment

                    Working...
                    X