Position eines Fensters einer "fremden" Anwendung ermitteln
-
Hallo,
ich möchte aus meiner Anwendung heraus ein anderes Programm starten. Wenn das Programm geöffnet ist möchte ich automatisch durch meine Anwendung einen Button auf diesem "fremden" Programm drücken. Das funktionert so weit auch wunderbar.
Das Problem ist jetzt nur, dass das Fenster der "fremden" Anwendung evtl. nicht immer an der gleichen Position ist. Mein Gedanke war nun, die Position des "fremden" Fensters zu ermitteln und den Versatz des Buttons zu addieren.
Aber wie komme ich an die Position (x,y) des "fremden" Fensters?
Danke
-
Hallo
wenn du den Handle des besagten Programms hast, schau dir die WinAPI-Funktion GetWindowRect() an.
Oder du gehst über die einzelnen Handles der Controls, also vom Window-Handle bis zum Button-Handle, und sendest den Klick direkt per Win-Message.
bis bald
akari
-
D.h. man kann eigentlich jeden Button einer beliebigen Anwendung über ein Handle "drücken"?
Mit Handle kenne ich mich noch nicht aus
Ich habe zwar auch schon Programme gemacht wo so etwas drin war, aber da habe ich den Code aus einem Beispiel
Bekommt man so ein Handle von jeder Anwendung heraus?
-
Hallo
wenn du den Namen des Controls weißt.
Dreh und Angelpunkt ist die WinPI-Funktion FindWindow(). Dort fängst du mit dem Fenster an. Hast du denn Handle, benutzt du diesen als Ausgangsparameter, und den namen des nächsten untergeordneten Controls, damit du dessen Handle bekommst...
Schau mal im WinAPI-Forum nach, dort ist das sicher beschrieben.bis bald
akari
-
OK, Danke mal...
ich versuch mein Glück
-
Dieser Thread wurde von Moderator/in Jansen aus dem Forum VCL/CLX (Borland C++ Builder) in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.