Zugriff auf Objekte



  • Hallo Freunde der Nacht,

    habe da mal ne bescheidene Frage. Sagen wir mal ich habe ne Gui-App. Diese setzt sich selbstredend, jenach nach verwendetem Gui-Framework leicht unterschiedlichen, aus Gui-Elementen zusammen. Alle Objekte dieser Application habe ja eine Adresse. Lange Rede kurzer Sinn.

    Wie kann ich aus einer anderen App oder aus einem Script auf eines dieser Objekte der gerade laufenden Applikation Zugreifen. Z.B. auf eine Methode eines Gui Elementes.

    Mfg Ismail



  • Die Frage hat

    1. nichts mit C++ zu tun.
    2. keine mögliche Pauschalantwort.


  • ICh möchte es aber in c++ machen. Mein Gui ist in c++ Framework geschrieben.

    Wo kann ich diese Frage denn stellen?

    Mfg Ismail



  • ismaild schrieb:

    Wie kann ich aus einer anderen App oder aus einem Script auf eines dieser Objekte der gerade laufenden Applikation Zugreifen. Z.B. auf eine Methode eines Gui Elementes.

    Die wichtigere Frage ist: Wozu?



  • Welches GUI-Framework?
    Welche Platform?



  • Also die Gui ist in Qt4 plattform win7 64bit. Ich will eigentlich herausfinden wie ich es schaffen kann per script(perl oder scheme, letzteres ist mir lieber) einfach über die Adresse des instanziierten Objektes auf Methoden des letzteren zugreifen kann. Man kann es fernsteuern nennen oder?

    Mfg Ismail



  • Du denkst in die falsche Richtung. Vergiss mal deine "Adresse". Du musst eine Automatisierungsapi anbieten. Dafür könntest du z.B. dbus nehmen, wenn du unter Linux läufst. Unter Windows muss man das nachinstallieren, keine Ahnung, ob du das willst, muss du selber entscheiden. Unter Windows könntest du dafür COM nehmen. Damit legst du dich aber auf Windows fest. Und ganz so einfach ist COM nicht, da braucht man schon etwas Erfahrung, um damit was vernünftiges machen zu können. Gibt auch andere Möglichkeiten, die unterschiedlich aufwändig/elegant sind. Du könntest einen low level IPC Mechanismus wie Pipes oder Sockets nehmen und einen Kommunikationsprotokoll definieren, dann schreibst du in deinem Programm einen Server und die Scripte müssen ihn ansprechen. Ist denk ich alles nicht so einfach, wie du dir das vorstellst.



  • ismaild schrieb:

    Also die Gui ist in Qt4 plattform win7 64bit. Ich will eigentlich herausfinden wie ich es schaffen kann per script(perl oder scheme, letzteres ist mir lieber) einfach über die Adresse des instanziierten Objektes auf Methoden des letzteren zugreifen kann. Man kann es fernsteuern nennen oder?

    Man kann es auch "du stellst dir das zu einfach vor" nennen.

    Im Allgemeinen:

    Das Problem: du meinst genug von Programmierung zu verstehen um beurteilen zu können was man alles machen kann, bzw. einschätzen zu können dass das ja alles nicht so schwer sein kann.
    Die Lösung: lass es.

    Im Speziellen:

    Man kann viele Windows Applikationen halbwegs gut "fernsteuern". Nämlich die, die normale Windows Fenster mit normalen Windows Controls verwenden, und sonst nix. Dazu verwendet man ebenfalls die WinAPI. Also lern WinAPI. Oder verwende AutoIt bzw. ein ähnliches Tool was speziell dafür gemacht ist.

    Man kann aber auch viele Windows Applikationen nicht fernsteuern. Zeig mir ein Programm dass mit WPF gemacht ist, und ich zeig dir ein Programm dass du nicht wirst fernsteuern können. Oder noch schlimmer: die meisten Spiele. Die verwenden nämlich dann ganz eigenen Direct3D/OpenGL Code, und damit kannst du dein Vorhaben einrexen.



  • Hallo

    Das Problem: du meinst genug von Programmierung zu verstehen um beurteilen zu können was man alles machen kann, bzw. einschätzen zu können dass das ja alles nicht so schwer sein kann.
    Die Lösung: lass es.

    Ich meine hier garnix verstanden. Ich könnte jetzt kotzen weisst Du. Wieso bist Du der Meinung, das ich hier irgendwelche Andeutungen gemacht habe ich würde genug von Programmierung verstehen. Wo habe ich dieses behauptet. Diese selbstherlichen Äuserungen sind hier fehl am Platze und ich verbitte es mir.

    Ich habe doch lediglich eine Frage gestellt. Man kann/darf doch hier noch was fragen dürfen ohne gleich ein reingesetzt zu bekommen, man.

    Das Problem: du meinst andere beurteilen zu können/dürfen ohne diesen Menschen richtig zu kennen.
    Die Lösung: lass es.

    Viele wegen führen nach Rom. Und wenn es bedeutet deswegen gewisse Fragen zu stellen um einen Anfang zu haben, dann stelle ich diese auch auf die Gefahr hin hier einigen Ego-Jovies hier auf den Schlips zu treten.

    Mfg Ismail


Anmelden zum Antworten